public class ColView {
ArrayList<EditText> listText=new ArrayList();
ArrayList <Spinner> listSpiner=new ArrayList();
private void getViewAble(ViewGroup viewGroup)
{ if (viewGroup == null)
{ return; }
int count = viewGroup.getChildCount();
for (int i = 0; i < count; i++)
{ View view = viewGroup.getChildAt(i);
if (view instanceof EditText)
{ // 若是Button记录下
EditText newText = (EditText) view;
listText.add(newText);
}else if (view instanceof Spinner){
Spinner newSpi = (Spinner) view;
listSpiner.add(newSpi);
}else if
(view instanceof ViewGroup)
{ // 若是布局控件(LinearLayout或RelativeLayout),继续查询子View
this.getViewAble((ViewGroup) view);
} } }
public void setDisAble(ViewGroup viewGroup){
getViewAble(viewGroup);
for (Iterator<EditText> list1 = listText.iterator(); list1.hasNext();) {
list1.next().setEnabled(false);
}
for (Iterator<Spinner> list2 = listSpiner.iterator(); list2.hasNext();) {
list2.next().setEnabled(false);
}
} }
以上这个是遍历设置的方法
ViewGroup contentView = (ViewGroup)
MainActivity.this.getWindow().findViewById(R.id.innerLayout1);
colView.setDisAble(contentView);
以上是调用的方法
设置了一个xml中的LinearLayout中的控件不可编辑,这样就可以实现某个权限只能看不能编辑的状态