2016-12-03 59 views
-2

我是Android Studio的新手,刚刚尝试学习新的代码方式,现在我被卡住了。例如,我想在findViewById中使用一个字符串。我想使用带字符串的findViewById作为Id

public void BDate0(String BId, String BHistoryClass) { 
     bdatum0 = (Button) findViewById(R.id.BId); 
     bdatum0.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       Intent BDatum0 = new Intent(bethistory.this, BHistoryClass.class); 
       startActivity(BDatum0); 
      } 
     }); 
    } 

,我想打电话给BDate0与琴弦例如,

BDate0(BId1, BHistory1); 

我有10个按钮和他们开始活动每天都会有所不同。

对不起,这不是我的母语,并感谢您提前的帮助。

+0

我觉得你的问题是dublicate:http://stackoverflow.com/a/13116057/4376058 –

+0

的可能的复制[如何转换R.drawable字符串在android中的可绘制整数格式?](http://stackoverflow.com/questions/13115914/how-to-convert-r-drawable-string-to-r-drawable-integer-format-in-android) –

回答

1

您可以使用此代码替换findViewById(..)。这应该有可能使用一个字符串作为标识符:

String BId = "button1"; // for example 
int id = getResources().getIdentifier(BId, "id", getPackageName()); 
// finds R.id.button1 
bdatum0 = (Button) findViewById(id);