diyelim ki bir öğe listemiz var ve bu öğelerin her biri ile bir form oluşturmak istiyorum. Bu form iki onay kutusu ve bir editText içerir. Örneğin, her bir ürünün bir depoda ve miktarında mevcut olup olmadığını bilmek istiyorum. Listemdeki her öğenin bir öğenin, iki onay kutusunun ve bir editText öğesinin yer alacağı bir liste görünümü kullanmak için sorunumu çözmeyi düşünüyorum.
Sorun şu ki, liste listesinin tek listesini kullanmak için bildiğim tek listenin kullanımı, sorunumu onunla nasıl çözmüyorum (android için yeni bir başlangıç yapıyorum). Birisi bana yardım edebilir mi?
Sorunumu çözmenin başka bir yolu var mı?
Teşekkür ederizHer bir öğe için editText ve onay kutusu ile Android liste görünümü
0
A
cevap
0
Bir cusom ListView bağdaştırıcısı kullanmaya çalışın! Bu düşündüğünüzden daha kolay!
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<EditText
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Test TEST" />
<LinearLayout android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_alignBottom="@id/itemTextView"
android:layout_alignParentRight="true">
<CheckBox
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<CheckBox
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/doneCheckBox" />
</LinearLayout>
Sonra kod içindeki cusom uygulamanıza:
Öncelikle listedeki her öğeyi temsil edecek ediyorum düzen oluşturmak gerekir
public CusomAdapter(Context mainContex, YourItems<SomeItem> someItems) {
this.mainContex = mainContex;
this.someItems = someItems;
}
@Override
public int getCount() {
return someItems.size();
}
@Override
public Object getItem(int position) {
return someItems.get(position);
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View item = convertView;
if (item == null) {
item = LayoutInflater.from(mainContex).inflate(R.layout.shoplist_item, null); // your listView layout here!
}
//fill listView item with your data here!
//initiate your check box
CheckBox doneCheckBox = (CheckBox)item.findViewById(R.id.doneCheckBox);
//add a checkbox listener
doneCheckBox.setOnCheckedChangeListener(new OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if(isChecked){
doneCheckBox.ischecked=true;
}
else{
doneCheckBox.ischecked=false;
}
}
});
return item;
}
ListView eleman eklemeyi unutmayın Etkinlik düzeninizin içinde!
+0
Bu sorunu çözmeyecek. –
+0
, bir onay kutusu dinleyicisi olmadan bir çözümünü, ancak bir TextWatcher ile povided. –
Benzer bir sorun var. lütfen şu adrese göz atın >> http://stackoverflow.com/questions/8166497/custom-adapter-for-list-view –
Çözümünüz burada: http://www.webplusandroid.com/creating-listview-with-edittext -and-textwatcher-in-android/ –