transferAvailPowered.axml클릭 가능한 조회수
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:focusable="false"
android:layout_margin="5dp"
android:padding="5dp"
android:gravity="left">
<TextView
android:id="@+id/availSerial"
android:layout_width="0dp"
android:layout_weight=".30"
android:layout_height="wrap_content"
android:layout_marginLeft="45dp"
android:layout_marginRight="5dp"
android:layout_marginTop="5dp"
android:layout_marginBottom="5dp"
android:focusable="false"
android:padding="5dp"
android:gravity="left" />
<TextView
android:id="@+id/availModel"
android:layout_width="0dp"
android:layout_weight=".30"
android:layout_height="wrap_content"
android:layout_margin="5dp"
android:focusable="false"
android:padding="5dp"
android:gravity="left" />
<AutoCompleteTextView
android:id="@+id/availSite"
android:layout_width="120dp"
android:layout_height="wrap_content"
android:padding="5dp"
android:hint="To Site"
android:background="@android:color/white"
android:textColor="@android:color/black"
android:textCursorDrawable="@null"
android:focusable="false"
android:layout_margin="5dp"
android:gravity="left" />
<ImageButton
android:id="@+id/addToTransfer"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="5dp"
android:layout_margin="5dp"
android:background="@drawable/addsmall"
android:focusable="false"
android:gravity="left" />
transferAvailAttached.axml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:focusable="false"
android:layout_margin="5dp"
android:padding="5dp">
<TextView
android:id="@+id/availSerial"
android:layout_width="0dp"
android:layout_weight=".30"
android:focusable="false"
android:layout_height="wrap_content"
android:layout_margin="5dp"
android:padding="5dp"
android:gravity="right" />
<TextView
android:id="@+id/availModel"
android:layout_width="0dp"
android:layout_weight=".30"
android:layout_height="wrap_content"
android:focusable="false"
android:layout_margin="5dp"
android:padding="5dp"
android:gravity="center" />
<CheckBox
android:id="@+id/include"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="left|center_vertical"
android:focusable="false"
android:layout_marginRight="30dp"
android:background="@drawable/bg_checkbox" />
<ImageButton
android:id="@+id/removeAttachment"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:focusable="false"
android:padding="5dp"
android:layout_margin="5dp"
android:background="@drawable/deletesmall"
android:gravity="right" />
어댑터
class EquipAdapter : BaseExpandableListAdapter
{
private List<CPEquipment> Parent { get; set; }
private List<List<CPEquipment>> Child { get; set; }
private Context _context { get; set; }
private IListAdapter _adapter { get; set; }
private ExpandableListView _list { get; set; }
public EquipAdapter(Context context, List<CPEquipment> parent, List<List<CPEquipment>> child, IListAdapter adapter, ExpandableListView list)
{
_context = context;
Parent = parent;
Child = child;
_adapter = adapter;
_list = list;
}
public override Java.Lang.Object GetChild(int groupPosition, int childPosition)
{
List<CPEquipment> level1 = Child.ElementAt(groupPosition);
CPEquipment level2 = level1.ElementAt(childPosition);
E e = new E() {Serial = level2.Serial, Model = level2.Model};
return e;
}
public override long GetChildId(int groupPosition, int childPosition)
{
return Convert.ToInt32(groupPosition.ToString(CultureInfo.InvariantCulture) + childPosition.ToString(CultureInfo.InvariantCulture));
}
public override int GetChildrenCount(int groupPosition)
{
return Child.ElementAt(groupPosition).Count;
}
public override View GetChildView(int groupPosition, int childPosition, bool isLastChild, View convertView, ViewGroup parent)
{
if (convertView == null)
{
LayoutInflater inflater = (LayoutInflater)_context.GetSystemService(Context.LayoutInflaterService);
convertView = inflater.Inflate(Resource.Layout.transferAvailAttached, null);
}
E e = (E)GetChild(groupPosition, childPosition);
TextView serial = (TextView)convertView.FindViewById(Resource.Id.availSerial);
serial.Text = e.Serial;
TextView model = (TextView)convertView.FindViewById(Resource.Id.availModel);
model.Text = e.Model;
return convertView;
}
public override Object GetGroup(int groupPosition)
{
CPEquipment c = Parent.ElementAt(groupPosition);
E e = new E(){Serial = c.Serial, Model = c.Model, Type = c.Status};
return e;
}
public override long GetGroupId(int groupPosition)
{
return groupPosition;
}
public override View GetGroupView(int groupPosition, bool isExpanded, View convertView, ViewGroup parent)
{
E e = (E)GetGroup(groupPosition);
if (convertView == null)
{
LayoutInflater inflater = (LayoutInflater)_context.GetSystemService(Context.LayoutInflaterService);
convertView = inflater.Inflate(Resource.Layout.transferAvailPowered, null);
}
TextView serial = (TextView)convertView.FindViewById(Resource.Id.availSerial);
serial.Text = e.Serial;
TextView model = (TextView)convertView.FindViewById(Resource.Id.availModel);
model.Text = e.Model;
AutoCompleteTextView acText = (AutoCompleteTextView)convertView.FindViewById(Resource.Id.availSite);
acText.Adapter = _adapter;
_list.ExpandGroup(groupPosition);
return convertView;
}
public override bool IsChildSelectable(int groupPosition, int childPosition)
{
return true;
}
public override int GroupCount
{
get { return Parent.Count; }
}
public override bool HasStableIds
{
get { return true; }
}
}
결과 :
이 시나리오에서는
, 상위 그룹에서 AutoCompleteTextView에와 녹색 더하기 버튼 "선택"해야 사용자가 입력 필드에 정보를 수 있고없이 그 버튼을 클릭 있도록 그룹을 무너 뜨렸다. CheckBox를 체크하고 버튼을 클릭 할 수 있도록 CheckBox와 자식의 빨간색 x 버튼도 "선택 가능"해야합니다. 실제로 작동하는 유일한 부분은 CheckBox가 선택 가능하고 더 나은 용어가 없기 때문에 그룹 레이아웃이 "작동하지 않음"이며 눌렀을 때 아무 것도하지 않기 때문에 그룹이 축소되지 않는다는 것입니다. 그리고 겉으로보기에 "작동하는"CheckBox는 체크하지 않거나 선택을 취소하면 다른 사람을 무작위로 체크하거나 체크하지 않는 이상한 일을하기 때문에 그렇다고 할 수 없습니다.
코드에는 Button 또는 checkBox 코드 스 니펫이 있습니까? – SALMAN
예. 포함 된 XML을보십시오. 첫 번째에는 ImageButton이 있고 두 번째에는 CheckBox와 ImageButton이 있습니다. – jmease