2016-03-29 14 views
0

R.idをすべて反復して、ImageViewのオブジェクトをすべて見つけてプロパティを変更しようとしています。 Androidのスタジオでエラーが表示されます。ここアンドロイドでRファイルを繰り返し処理する

は、ここでは、コード

public void initializeChipsViewholdersArray(){ 
    for (int i = 1; i<10; i ++){ 
     String viewholderName = "chip_00"+i; 
     int id_2 = R.id.class.getFields(viewholderName).getInt(0);//erorr here 
    ImageView chipViewholder= (ImageView)findViewById(id); 
      chipViewholder.setVisibility(View.INVISIBLE); 
} 

である私が選択したソリューションはここHow do I iterate through the id properties of R.java class?

+0

Class.getFields、getField()を探している任意の引数に

をとらない)は、引数を取りません。 getField()。get(null)を意味しましたか? –

+0

'getFields()'は、 'R'クラス内の静的内部クラスである' R.id'クラス内のすべてのpublicフィールドを返します。これは、リソースのJava自動生成クラスです。そのメソッド、 'getFields()'は引数を取らない –

+1

[R.javaクラスのidプロパティを反復処理する方法は?](http://stackoverflow.com/questions/2941459/how- r-java-classの-i-iterate-the-id-properties) –

答えて

0

getFields()議論されてきたエラー

Error:(28, 33) error: method getFields in class Class cannot be applied to given types; required: no arguments found: String reason: actual and formal argument lists differ in length where T is a type-variable: T extends Object declared in class Class

である、R.idクラス内のすべてのパブリックフィールドを返しますRクラスの内部の静的な内部クラス。これは、Javaの自動生成クラスです。リソース。その方法、getFields()、(あなたがいないgetFields()

public void initializeChipsViewholdersArray(){ 
    for (int i = 1; i<10; i ++){ 
     String viewholderName = "chip_00"+i; 
     int id_2 = R.id.class.getField(viewholderName).getInt(0); 
    ImageView chipViewholder= (ImageView)findViewById(id); 
      chipViewholder.setVisibility(View.INVISIBLE); 
} 
関連する問題