我对Android很新。我正在开发一款应用程序。 应用程序的一部分应具有列表视图:(附))
我想在android中实现相同的列表。
列表项结构: 文字| Button1 |按钮2
按钮行为: 如果用户单击第一个按钮(是按钮),它就会被选中。 但是当第二个按钮(没有按钮,X)时,在它下面会出现另外三个按钮选项。我用JavaScript实现了。
但不知道如何在android中接近它。
我正在寻找选项如何在android中有类似的行为(对于不同的设计方法开放)。
最好和/或最简单的方法是什么?
致以最诚挚的问候,
答案 0 :(得分:1)
答案 1 :(得分:1)
在layout.xml文件中,您可以默认将views / widgets / etc ...设置为android:visibility="invisible"
或android:visibility="gone"
。然后,以编程方式在您的onclick事件中,只显示/隐藏它们:
yourElement.setVisibility(View.Visible);
答案 2 :(得分:1)
执行ListView:
String [] items = {"item1", "item2", "item3"...};
ListView listView = (ListView) findViewById(R.id.listview);
ListViewAdapter adapter = new ListViewAdapter(this, items);
listView.setAdapter(adapter);
ListViewAdapter:
public class ListViewAdapter extends ArrayAdapter<String> {
private final Context context;
private final String[] values;
private List<String> _listDataHeader; // header titles
public ListViewAdapter(Context context, String[] values) {
super(context, R.layout.list_item_listview, values);
this.context = context;
this.values = values;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View rowView = inflater.inflate(R.layout.list_item_listview, parent, false);
TextView dateTextView = (TextView) rowView.findViewById(R.id.lblListItem1);
Button button1 = rowView.findViewById(R.id.button1);
Button button2 = rowView.findViewById(R.id.button2);
Button button3 = rowView.findViewById(R.id.button3);
Button button4 = rowView.findViewById(R.id.button4);
Button button5 = rowView.findViewById(R.id.button5);
LinearLayout linearLayoutFirstButton = rowView.findViewById(R.id.linearLayoutFirstButton);
button2.setOnClickListenersetOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
linearLayoutFirstButton.setVisibility(View.VISIBLE);
}
}
return rowView;
}
}
您的list_item_listview.xml文件:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
android:weightSum="3">
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/layout1"
android:layout_weight="2">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/list_item_textview"/>
</LinearLayout>
<RelativeLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/layout2"
android:layout_weight="1">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:id="@+id/linearLayoutFirstButton"
>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/button1"
android:layout_weight="1"
/>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/button2"
android:layout_weight="1"
/>
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:visibility="gone"
android:layout_below="@+id/linearLayoutFirstButton"
>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/button3"
android:layout_weight="1"
/>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/button4"
android:layout_weight="1"
/>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/button5"
android:layout_weight="1"
/>
</LinearLayout>
</RelativeLayout>
买家注意:未经测试的代码。