在android中初始化小部件

时间:2016-06-26 06:03:08

标签: android

我有50个textviews.can我避免初始化像这样的所有文本视图。是否有任何代码可以自动初始化所​​有这些小部件

t1 = (TextView) myFragmentView.findViewById(R.id.tvone);
t2 = (TextView) myFragmentView.findViewById(R.id.tvtwo);
t3 = (TextView) myFragmentView.findViewById(R.id.tvthree);
t4 = (TextView) myFragmentView.findViewById(R.id.tvfour);
t5 = (TextView) myFragmentView.findViewById(R.id.tvfive);
t6 = (TextView) myFragmentView.findViewById(R.id.tvsix);
t50 = (TextView) myFragmentView.findViewById(R.id.tvfifty);

2 个答案:

答案 0 :(得分:0)

您可以通过此方法获取视图中的所有EditTexts:

Method to get all EditTexts in a View

您也可以创建包含“ID,Textview”的地图

    HashMap<Integer,EditText> myEditTextList = new HashMap<Integer,EditText>();

    for( int i = 0; i < myLayout.getChildCount(); i++ )
        if( myLayout.getChildAt( i ) instanceof EditText )
            myEditTextList.put(  ((EditText) myLayout.getChildAt( i )).getId() , 
                   ((EditText) myLayout.getChildAt( i )));

答案 1 :(得分:0)

您可以通过将所有TextView重命名为“tv1 ... tv50”来初始化它们,并使用以下代码:

{{1}}