Android开发:传递信息并失败

时间:2010-12-14 18:25:52

标签: android

我的项目中有2个班级。第一个类(main)有一个listview,这是onclick():

@Override
    protected void onListItemClick(ListView l, View v, int position, long id) {
        super.onListItemClick(l, v, position, id);
        // Get the item that was clicked
        Object o = this.getListAdapter().getItem(position);
        String keyword = o.toString();
        class2 sec = new Class2();

        Intent intent = new Intent(this, Class2.class);
        startActivity(intent) ;
        if (keyword == "hello"){
            sec.setInfo(keyword);
        }



    }

所以然后在我的其他类中有一个不同的layout.xml。代码是:

public class det extends Activity {
    static WebView map;
    public TextView header;
    @Override
    public void onCreate(Bundle savedInstanceState){
        super.onCreate(savedInstanceState);
        setContentView(R.layout.details);

}
    public void setInfo(String mystring){
        header = (TextView) findViewById(R.id.text01);
        header.setText(mystring);
        //Toast.makeText(this, map, Toast.LENGTH_LONG).show();
        //return;
    }

是的,我一直在我的Android手机上强行关闭。应用程序我打算将标题文本更改为我在列表视图上点击的文本。但是当我点击一个项目时,它会弹出一个带FC的窗口。

我试着评论:

header = (TextView) findViewById(R.id.text01);
        header.setText(mystring);

并且它没有FC,但是headertext是stil null。

谢谢! 你的朋友!

1 个答案:

答案 0 :(得分:2)

首先,您需要发布堆栈跟踪,以便我们知道如何提供帮助。

其次,我假设Class2扩展了Activity,否则Intent intent = new Intent(this, Class2.class);没有任何意义。既然如此,class2 sec = new Class2();总是错的。你永远不会在扩展Activity的类上调用new

您无法在其他活动上调用方法。您唯一真正的选择是使用putExtra在intent中发送关键字,然后在Class2

中检索它