0

我只想使用java代码从strings.xml的textView中设置一个文本,但我不能,eclipse给了我这个错误:“textView1无法解析”和“textView2无法解析”。

这是我的活动:

package com.example.activity;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.widget.ImageView;

public class Descripcion extends Activity{

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.descripcion);

    Intent i = getIntent();

    int position = i.getExtras().getInt("id");
    ImageAdapter imageAdapter = new ImageAdapter(this);

    switch (position){
    case 0:

    ImageView imageView0 = (ImageView) findViewById(R.id.full_image_view);
    imageView0.setImageResource(imageAdapter.mThumbIds[position]);

    textView1.setText(this,getString(R.string.case0));
    textView2.setText(this,getString(R.string.case0b));

    break;

    case 1:

    ImageView imageView1 = (ImageView) findViewById(R.id.full_image_view);
    imageView1.setImageResource(imageAdapter.mThumbIds[position]);

    textView1.setText(this,getString(R.string.case1));
    textView2.setText(this,getString(R.string.case0b));

    break;  
    }
}
}

我一直在寻找大约 3 个小时的解决方案,但我无法解决。

4

5 回答 5

3

我看不到您在哪里声明 TextView,例如:

TextView textView1 = (TextView)findViewById(R.id.textView1);
于 2012-09-25T16:59:37.280 回答
1

1)你没有定义TextView

2)你没有做得到findViewById相应的TextView

怎么做?

您的代码本身有如何做到这一点的线索,例如:

ImageView imageView1 = (ImageView) findViewById(R.id.full_image_view);

在这里你定义ImageView并指出它R.id.full_image_view定义在layout.xml

像这样你需要得到TextView,例如:

TextView textView1 = (TextView)findViewById(R.id.textView1);
于 2012-09-25T16:58:43.187 回答
0

您忘记定义变量textView1textView2. 除此之外,您需要使用findViewById. 奇怪的是,您这样imageView1做是为了TextViews.

在下面添加以下代码etContentView(R.layout.descripcion)

TextView textView1 = (TextView) findViewById(<<-- the id of textView1 -->>); TextView textView1 = (TextView) findViewById(<<-- the id of textView2 -->>);

于 2012-09-25T17:00:12.450 回答
0

那是因为 textView1 和 textView2 没有定义......

你看到你用 ImageView 做什么了吗?

ImageView imageView0 = (ImageView) findViewById(R.id.full_image_view);

您必须将相同的概念应用于文本视图。

TextView textView1 = (TextView) findViewById(R.id.id_of_text_view_1);
TextView textView2 = (TextView) findViewById(R.id.id_of_text_view_2);

然后就可以对那个文本视图进行操作了,比如设置文本!

于 2012-09-25T17:00:40.737 回答
0

定义你的文本视图,就像你做你的图像视图一样。

您可以使用

TextView textView1 = (TextView)findViewById(R.id.textView1);
TextView textView2 = (TextView)findViewById(R.id.textView2);

在哪里

R.id.textView1

是您的 xml 布局中 textview1 的 id

R.id.textVie2

是您的 xml 布局中 textview2 的 id

于 2012-09-25T17:02:09.820 回答