Activityのコントロールを巡回
1876 ワード
Activityのコントロールを巡回するには、ActivityのcontentViewを取得し、getChildCount()とgetChildAt()を使用して逐次巡回します.
ActivityのcontentView を最初に取得サブコントロールを巡回し、レイアウトコントロールであれば再帰的な方法でサブコントロールを巡回します.
Activity全体のButtonコントロールを巡回する必要があると仮定し、上記の第2ステップのコードを少し変更することができます.変更後のコードは以下の通りです. もちろん統計数量操作だけでなく、すべてのボタンの属性を設定することもできます:
Activityのすべてのコントロールを巡回し、数を統計します。
// vGroup activity.xml , mRootView 。
ViewGroup vGroup = (ViewGroup) getWindow().getDecorView().findViewById(android.R.id.content);
ViewGroup mRootView = (ViewGroup)vGroup.getChildAt(0);
private int count = 0; // ,
//rootView mRootView, Activity
private void traversalView(ViewGroup rootView) {
Log.d("Traversal","start rootView:"+rootView);
for(int i = 0; i
Activity内のすべての特定のタイプのコントロールを巡回
private int btnCount = 0;// Button ,
//rootView mRootView
private void traversalView(ViewGroup rootView) {
Log.d("Traversal","start rootView:"+rootView);
for(int i = 0; i
private int btnCount = 0;// ,
//rootView mRootView
private void traversalView(ViewGroup rootView) {
for(int i = 0; i