0

非常简单的问题,但也很奇怪:

我有一个PanelGlobalActivity扩展 Activity 的类,它被设置为 layout panel_view_activity。我有一个按钮和一个文本视图,都有 ID。

当我这样做时findViewById(R.id.*),它可以看到我的按钮和我的文本视图,但我无法更改它们的值或任何东西。就像button.setText("Hello")会编译但不会改变它。

有任何想法吗 ?

这是我的 xml 文件(panel_view_activity):

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >

<Button 
    android:id="@+id/button1"
    android:layout_width="match_parent"
    android:layout_height="wrap_content" />  

<TextView 
    android:id="@+id/text1"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"/>

</LinearLayout>

这是我的java类:

public class PanelGlobalActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.panel_view_activity);

    TextView label = (TextView)findViewById(R.id.text1);
        label.setText("Test");


}

}

谢谢。尼克。

4

2 回答 2

0

你可以尝试这样的事情:

public class PanelGlobalActivity extends Activity {
   @Override
   public void onCreate(Bundle savedInstanceState) {
   super.onCreate(savedInstanceState);

   Button someButton = (Button) findViewById(R.id.yourButtonId);
   someButton.setText("text changed");
   }
}

如果您使用 Eclipse,编码中的一些提示:

1.使用 Ctrl + Shift + O(导入必要的库或自动导入任何内容) 2.使用 Ctrl + W(列出对象的所有可能方法)就像您键入“someButton.s”然后按 Ctrl + W,将显示所有可用的方法

于 2013-05-29T07:40:47.253 回答
0

您的示例代码没有任何问题……我已经运行它了,非常好。..

于 2013-05-29T07:46:20.937 回答