0
int department;
Button search;
String display;
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    department = 0;
    search = (Button) findViewById(getResources().getIdentifier("btnSearch", "id",    getPackageName()));
    display = (String) findViewById(getResources().getIdentifier("tvDisplay", "id",      getPackageName()));

    search.setOnClickListener(new View.OnClickListener() {

        public void onClick(View v) {
            // TODO Auto-generated method stub
            if (department == 1)
            {
                display = "food";
            }

我想要做的是让用户输入一个数字,点击一个按钮,它将在我底部的 textView 中显示一个部门名称。但是,我遇到了错误,我已经将它的几个部分转换为字符串而不是 textView。我如何修复输出的去向?

display = (String) findViewById(getResources().getIdentifier("tvDisplay", "id", getPackageName()));说它不能从视图转换为字符串。

4

3 回答 3

2

尝试这个:

TextView display = (TextView) findViewById(getResources().getIdentifier("tvDisplay", "id", getPackageName()));

// get the text
String displayString = (String)display.getText();
于 2012-04-17T13:58:44.833 回答
2

问题是您正在将文本视图转换为字符串。您应该将类​​型更改displayTextView,并使用其setText方法在其中显示文本,尝试以下代码:

int department;
Button search;
TextView display;

@Override
public void onCreate(Bundle savedInstanceState)
{
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    department = 0;
    search = (Button) findViewById(getResources().getIdentifier("btnSearch", "id", getPackageName()));
    display = (TextView) findViewById(getResources().getIdentifier("tvDisplay", "id", getPackageName()));

    search.setOnClickListener(new View.OnClickListener()
    {
        public void onClick(View v)
        {
            // TODO Auto-generated method stub
            if (department == 1)
            {
                display.setText("food");
            }
        }
    });
}
于 2012-04-17T14:07:55.073 回答
0

tvDisplay 是一个 TextView,而不是一个字符串。因此,请显示一个 TextView,找到该视图,然后调用 display.getText() 以获取显示的文本。

于 2012-04-17T14:01:44.337 回答