2015-10-27 2 views
2

У меня есть вопрос, с которым я имел дело в течение некоторого времени. Я занимаюсь разработкой веб-приложений для передачи s2.Как прокручивать элементы в списке, используя рамку в Samsung Tizen Gear s2?

Что я хочу сделать в своем приложении, это нечто похожее на то, что вы делаете в самих часах.

В '' settings '', например, у вас есть вертикальный список, и вы можете прокручивать элементы, поворачивая рамку.

я знаю по этому вопросу Rotarty (ring) on Samsung Tizen Gear S2 это событие должно быть использовано:

rotaryDetentCallback = function rotaryDetentHandler(e) { 
    var direction = e.detail.direction; 
    if (direction === "CW") { 
     // TODO: do something 

    } else if (direction === "CCW") { 
     // TODO: do something 

    } 
}; 

window.addEventListener("rotarydetent", rotaryDetentCallback); 

Как я могу заставить его работать внутри, если(), чтобы прокрутить элементы в списке?

ответ

2

Это зависит от типа списка, который вы хотите отобразить.

Для статических элементов списка система TAU уже позаботится об этом для вас. Поэтому вам не нужно ничего добавлять на стороне скрипта.

Пример статического контента:

<ul data-role="listview" > 
    <li>item 1</li> 
    <li>item 2</li> 
    <li>item 3</li> 
    <li>item 4</li> 
    <li>item 5</li> 
    <li>item 6</li> 
    <li>item 7</li> 
    <li>item 8</li> 
</ul> 

Для динамического контента, эта функциональность еще глючит, но это возможно. Вы должны обновить содержимое своего динамического списка в "pagebeforeshow" (не "pageshow"). Как только вы это сделаете, он будет вести себя так, как если бы это был статический список.

Пример динамического контента:

в вашем HTML:

<ul id="myListView" data-role="listview" > 
</ul> 

в ваших ЯШ:

page.addEventListener("pagebeforeshow", function() { 
    var element = document.getElementById("myListView"); 
    var myListView = tau.widget.Listview(element); 

    myListView.addItem("<li>item 1</li>", 1); 
    myListView.addItem("<li>item 2</li>", 2); 
    myListView.addItem("<li>item 3</li>", 3); 
    myListView.addItem("<li>item 4</li>", 4); 
    myListView.addItem("<li>item 5</li>", 5); 
    myListView.addItem("<li>item 6</li>", 6); 
    myListView.addItem("<li>item 7</li>", 7); 
    myListView.addItem("<li>item 8</li>", 8); 
}); 

Я надеюсь, что вы найдете эти примеры полезны.

+0

Большое спасибо за ваш ответ. У меня был статический список, и рамка не работала над ним, поэтому я думал, что мой .js неверен. но я только что проверил список образцов, и, как вы сказали, это уже работает! –

+0

Привет @Armin. У меня есть другой вопрос. У меня есть простая страница с текстом. Снова я не могу прокручивать его вверх и вниз, используя рамку. знаете ли вы, как это можно решить? спасибо. –

+0

Привет! Я еще не пробовал. Я бы предложил опубликовать это как новый вопрос, и когда найду ответ, я отвечу на него. – Armin

Смежные вопросы