2015-07-19 96 views
-1
private void displayWordsList() { 
    this.wordsList.removeAllViews(); 
    int i = (int) (0.5f + (3.0f * getResources().getDisplayMetrics().density)); 
    int i2 = (int) (0.5f + (2.0f * getResources().getDisplayMetrics().density)); 
    TextView textView = null; 
    TextView textView2; 
    Word word; 
    View textView3; 
    LayoutParams layoutParams; 
    View view; 
    if (findViewById(R.id.words) instanceof ScrollView) { 
     Iterator it = this.gridView.getWords().iterator(); 
     int i3 = 100; 
     textView2 = null; 
     while (it.hasNext()) { 
      word = (Word) it.next(); 
      if (!word.found) { 
       textView3 = new TextView(this); 
       textView3.setTextSize(15.0f); 
       textView3.setText(word.toString()); 
       textView3.setGravity(17); 
       textView3.setPadding(i, i2, i, i2); 
       textView3.setTextColor(Color.argb(MotionEventCompat.ACTION_MASK, 51, 51, 51)); 
       layoutParams = new RelativeLayout.LayoutParams(-2, -2); 
       if (i3 == 100) { 
        layoutParams.addRule(11); 
        layoutParams.addRule(10); 
        textView3.setLayoutParams(layoutParams); 
        textView3.setId(i3); 
        view = textView3; 
       } else { 
        layoutParams.addRule(11); 
        layoutParams.addRule(3, textView2.getId()); 
        textView3.setLayoutParams(layoutParams); 
        textView3.setId(i3); 
        view = textView3; 
       } 
       this.wordsList.addView(textView3); 
       i3++; 
       textView2 = view; 
      } 
     } 

这是我的跨文字游戏displayWordList.java,textView3.setId(i3);当我尝试setId(i3)意味着(int i3 = 100;)在Android Studio中获得像“预期资源类型的ID”的任何帮助..Android TextView.setID(int)programatically not working

+0

你想使用该ID作什么? – Vlad

+1

为我的跨文字益智游戏 – Anguraj

+0

我的意思是什么确切?区分TextViews? – Vlad

回答

1

在res-values文件夹内创建文件。给它起个像ids.xml这样的名字。 将这个文件里面:

<?xml version="1.0" encoding="utf-8"?> 
<resources> 
    <item type="id" name="your_desire_name"/> 
</resources> 

现在,你可以参考它:

textView3.setId(R.id.your_desire_name); 

除了你的逻辑是行不通的,因为你没有初始化“textView3”所以这将是空。

+0

试试我的答案,应该工作 – yshahak

+0

它的int值是否有效? – Anguraj

+0

为什么你想让id成为这个数字?更好的方法是让系统按照我的建议管理视图的ID。 – yshahak