2016-12-13 3 views
0

Изображение показывает, чего я хочу достичь.Расширяемое меню и пункты меню с плюсом и минусом

Image Description

В моей деятельности, я хотел бы иметь expandablelistview. Которая, когда будет нажата, покажет список элементов (элементы в списке будут заполнены из таблицы базы данных). Рядом с каждым элементом я хотел бы отображать минус, плюс и число. Каждый раз, когда нажимается «плюс», номер добавляет его на номер отображения или если нажимается минус, номер отображения будет вычитаться одним. Я считаю, вы получите общее представление о том, как будут работать элементы и «+» и «-».

Я просмотрел этот учебник: Android Custom View Tutorial (Part 1) – Combining Existing Views К сожалению, этот учебник охватывает только плюс и минус, а не расширяемый вид.

Проблема, с которой я столкнулся, - как я буду отпечатывать это на Java. Я читал, что мне следует комбинировать взгляды, но я не совсем уверен в этом. Я на правильном пути? (В целом: У меня есть дизайн, но не знаю, как его код)

ответ

1

Если я правильно понимаю, что вам нужно только создать expandablelistview и адаптер (см здесь https://www.codeproject.com/Articles/1151814/Android-ExpandablelistView-Tutorial-with-Android-C), то внутри getChildView() раздувать R.layout.child_row что содержит ваш пользовательский вид (или вы можете создать макет с помощью собственных виджетов Android, как показано ниже).

<!-- child_row.xml --> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="horizontal"> 

    <TextView 
     android:layout_width="0dp" 
     android:layout_height="wrap_content" 
     android:layout_weight="1" 
     android:ellipsize="end" 
     android:singleLine="true" 
     tools:text="Menu Item 1" /> 

    <Button 
     android:id="@+id/bt_less" 
     android:layout_width="50dp" 
     android:layout_height="wrap_content" 
     android:text="-" 
     android:textColor="@android:color/holo_red_light" /> 

    <TextView 
     android:layout_width="50dp" 
     android:layout_height="wrap_content" 
     android:gravity="center" 
     tools:text="0" /> 

    <Button 
     android:id="@+id/bt_more" 
     android:layout_width="50dp" 
     android:layout_height="wrap_content" 
     android:text="+" 
     android:textColor="@android:color/holo_green_light" /> 

</LinearLayout> 

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

  • Нет связанных вопросов^_^