Appcelerator TableViewRow проведите - PullRequest
       18

Appcelerator TableViewRow проведите

0 голосов
/ 13 октября 2011

Кто-нибудь знает, как взломать, чтобы провести влево-> вправо на просмотр таблицы.Действие смахивания по умолчанию открывает кнопку удаления, однако мне требуются дополнительные кнопки, но я хочу сохранить тот же UX, но слушатель события «смахивание» не срабатывает по строкам.

myTblRow.addEventListener('swipe', function(e){

     Titanium.API.info("huzzah, a row was swiped");

});

Выше == неткости.

1 Ответ

1 голос
/ 13 января 2012

Требуется немного хака ... удалите редактируемое свойство в объявлении tableView.

Взломать это применить представление, которое покрывает tableRow:

var row1 = Titanium.UI.createView({
        width: Titanium.Platform.displayCaps.platformWidth,
        height: 145,
        zIndex: 100,
        opacity: 0.1
    });
    row.add(row1);

Обратите внимание на zIndex, прозрачность делает его существующим, но полностью прозрачным.

Теперь вам нужно создать прослушиватель событий «swipe»:

tableView.addEventListener('swipe', function(e){
   tableView.updateRow(e.index, createUpdateRow(e.source.myProperty), {
       animationStyle: Titanium.UI.iPhone.RowAnimationStyle.LEFT
    });
});

Когда происходит событие, вызывается createUpdateRow (), который возвращает tableRow. Эта таблица, к которой вы добавляете все свои пользовательские кнопки, можете изменять высоту строки, что угодно. Свойство стиля анимации будет означать, что если вы проведете пальцем справа> влево, новая строка будет анимирована слева, что мне нравится.

Надеюсь, это поможет кому-нибудь еще ... Дополнительный вид (строка 1) - это то, что меня заводило на века!

...