图像显示了我想要完成的任务。
在我的活动中,我希望有一个expandablelistview。单击时,将显示项目列表(列表中的项目将从数据库表中填充)。在每个项目旁边,我想显示一个减号,一个加号和一个数字。每次点击加号时,数字将在显示的数字上加1,或者如果点击减号,显示的数字将减1。我相信你可以大致了解这些项目以及“+”和“ - ”的工作原理。
我查看过本教程:Android Custom View Tutorial (Part 1) – Combining Existing Views 不幸的是,本教程仅涵盖正负部分,而不是可扩展视图。
我面临的问题是如何在Java中打印这个问题。我读过我应该结合观点,但我不确定如何。我在正确的道路上吗? (一般来说:我有设计,但不知道如何编码)
答案 0 :(得分: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>