views:

85

answers:

1

Hi, I'm trying to put together a mobile web app using Apple's Dashcode.

I would like to use a Rounded Rectangle List as a menu interface for my users, however, I cannot seem to change the various rows' labels in a dynamic list.

Here is the javascript for my list:

var dayController = {

/* categoryList will display these items  */
_rowData: ["iPods", "Macs", "Applications"],

 /* categoryListController must implement the numberOfRows and prepareRow functions */
/*  This method is used to find out how many rows should be in the list */
numberOfRows: function() {
    return this._rowData.length;
},


/* categoryList calls this method once for every row. */
prepareRow: function(rowElement, rowIndex, templateElements) {
    /* 
       templateElements contains references to all elements that have an id in the category template row.
       We use the lines below to update the list with each category item in _rowData.
    */
    if (templateElements.categoryLabel) {
        templateElements.categoryLabel.innerText = this._rowData[rowIndex];
    }

    /* Assign an onclick handler that will cause the browser to go a page 
       showing all products related to this category item, when clicked 
    */
    var self = this;
    var handler = function() {
        /* Get the category item associated with this row */
        var category = self._rowData[rowIndex];

    };
    rowElement.onclick = handler;
}

};

I want to be able to assign the rowData[] as the labels for the rows in the lists, but I can't seem to get it to work.

I'm guessing I need to change something with the prepareRow function, right?

Has anyone successfully used JQuery with Dashcode to build a web app? Perhaps that would be a better approach.

A: 

Erm wouldn't you set the rounded rectangle in the css and not the javascript?

You can use Dashcode to make the web app but there other alternatives, rather a lot these days actually. However there was a JS framework called JQTouch, built on top of JQuery for doing this. JQTouch has now beed subsumed into Extjs and all of it rename Sechcha Touch. I would suggestyou go an look at that as a more flexible alternative.

I found Dashcode excellent for building Mac Widgets but much more limited for web based iPxx apps.

PurplePilot