Я хочу иметь в моем основном виде два колеса прокрутки для выбора времени, одно содержит цифры от 01-24, другое 00-60, с прыжками 5 (0,5,10..55) Есть ли что-то готовое для такого предмет? аналогично http://code.google.com/p/mobiscroll/, только для Android -в. Выбор времени довольно раздражает ... мне нужно нажимать +-, пока я не выберу то, что хочу. я предпочитаю что-то более интуитивно понятное. Какие варианты у меня есть для такой вещи?
выбор времени с прокруткой для Android?
comment
Я сделал что-то подобное. Но список не круговой. Вам нужен код?
- person Fahad Ishaque   schedule 22.02.2013
comment
Мне все равно, если он круглый, мне просто нужно что-то прокручиваемое. Нечего эксперту. Тем временем я попробую другие предложения
- person buddy123   schedule 22.02.2013
comment
Это работает для моего. Он создает эффект привязки в представлении списка. Если вам нужен xml, дайте мне знать.
- person Fahad Ishaque   schedule 22.02.2013
comment
Вы можете добавить свой собственный фон, чтобы все выглядело лучше.
- person Fahad Ishaque   schedule 22.02.2013
Ответы (3)
Ничего не встроено, но вы можете попробовать следующее: http://code.google.com/p/android-wheel/
person
Raymond P
schedule
22.02.2013
Я попытался импортировать папку как проект Android, и ошибка:
[2013-02-22 15:27:42 - Main] Unable to resolve target 'android-3' [2013-02-22 15:44:29 - wheel] Unable to resolve target 'android-7'
- person buddy123; 22.02.2013
Здесь вы найдете полный проект с исходным кодом. TestWheel.zip
- скачать
TestWheel.zip
по ссылке. - Импортируйте его в свой Eclipse
- Преобразуйте этот проект в проект библиотеки (щелкните правой кнопкой мыши проект testWheel ==> свойства ==> android ==> установите флажок
is library
). - Добавьте этот проект библиотеки в свой проект.
- скопируйте и вставьте следующий код в свой файл XML.
person
Qadir Hussain
schedule
22.02.2013
какие ошибки вы получаете сейчас? я реализовал это даже вчера. это работает хорошо для меня.
- person Qadir Hussain; 22.02.2013
ошибки, такие как
[2013-02-22 15:27:42 - Main] Unable to resolve target 'android-3' [2013-02-22 15:44:29 - wheel] Unable to resolve target 'android-7'
- person buddy123; 22.02.2013
stackoverflow .com/questions/11278319/
- person Qadir Hussain; 23.02.2013
установите ‹uses-sdk android:minSdkVersion=7/› в файле манифеста.
- person Qadir Hussain; 23.02.2013
и очистите свой проект также
- person Qadir Hussain; 23.02.2013
Вот ваш файл hour_listView. Просто установите для него строковый адаптер. Предполагая, что вы можете заполнить listView с помощью ArrayAdapter.
hr_list.setOnScrollListener(new OnScrollListener() {
int currentcount,topitem,firstitem,lastitem;
@Override
public void onScrollStateChanged(AbsListView view, int scrollState) {
if (scrollState == SCROLL_STATE_IDLE && currentcount == 4) {
while (scrollState == SCROLL_STATE_TOUCH_SCROLL) {
}
LinearLayout item = (LinearLayout) view.getChildAt(0);
int height = item.getHeight();
int top = Math.abs(item.getTop()); // top is a negative value
if (top <= height/2){
view.smoothScrollToPositionFromTop(topitem, 0, 3000);
Log.d("Switch", "up");
}
if(top> height/2){
view.smoothScrollToPositionFromTop(topitem+1, 0,3000);
Log.d("Switch", "down");
}
}
}
А затем установите button.clickListener, и вы получите номер центральной строки видимого списка.
int list_hr = hr_list.getFirstVisiblePosition() - hr_list.getHeaderViewsCount();
Несколько ключевых моментов. * установить высоту разделителя для listView 1dp. * Используйте линейную компоновку для заполнения списка. Высота строки должна составлять 1/3 от общей высоты списка (в dp).
XML для списка и кнопки
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:text="Snap List"
android:textSize="25sp" />
<ListView
android:id="@+id/listView1"
android:layout_width="100dp"
android:layout_height="120dp"
android:fadingEdgeLength="33dp"
android:layout_alignParentLeft="true"
android:layout_below="@+id/textView1"
android:layout_marginTop="73dp"
android:background="@drawable/lisbg"
android:scrollbars="none" >
</ListView>
<StackView
android:id="@+id/stackView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignTop="@+id/listView1"
android:layout_marginLeft="103dp"
android:layout_marginTop="57dp"
android:layout_toRightOf="@+id/textView1" >
</StackView>
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_below="@+id/textView1"
android:layout_marginRight="58dp"
android:text="OK" />
<Button
android:id="@+id/button2"
style="?android:attr/buttonStyleSmall"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/button1"
android:layout_below="@+id/button1"
android:text="Scroll 5" />
XML для строки.
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="40dp"
android:textSize="25sp"
android:gravity="center_vertical|center_horizontal"
android:layout_gravity="center_vertical|center_horizontal"
android:text="TextView" />
person
Fahad Ishaque
schedule
22.02.2013