0

这是我的按钮点击监听器

   go.setOnClickListener(new View.OnClickListener() {

        public void onClick(View v) {
            // TODO Auto-generated method stub
            // Tab for Photos
            go();
            //photospec.setIndicator(url.getHost().replace("www."," ").replace(".com"," "));
        }
    });

这是我的 go() 方法

public void go(){
         photospec = tabHost.newTabSpec("");
            // setting Title and Icon for the Tab
        // Intent intent = new Intent(getBaseContext(), SignoutActivity.class);
        // intent.putExtra("EXTRA_SESSION_ID", sessionId);
         //startActivity(intent)
         URL url = null;
        try {
            url = new URL( text.getText().toString());
        } catch (MalformedURLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

        photospec.setIndicator(url.getHost().replace("www."," ").replace(".com"," "));
        photosIntent = new Intent(getBaseContext(),PhotosActivity.class);
        //photosIntent.setClass(this, PhotosActivity.class);
        photosIntent.putExtra("URL1", text.getText().toString());
        photospec.setContent(photosIntent);


            if(counter==0){

            tabHost.addTab(photospec);
            }
            counter++;

    }

我在这个方法中有一个按钮单击方法我正在调用名称所在go()的函数

这种go()方法,我正在创建一个选项卡并且我有意图。在这个意图我发送一些

信息到另一个班级。

问题是当我第一次单击按钮时,我可以正常将数据发送到另一个类。但是,当我单击两次或更多次时,此意图不会将数据发送到其他类。

4

1 回答 1

0

我认为问题是你问counter==0,然后增加那个计数器。下次代码tabHost.addTab(photospec)不会被调用,除非我在这里遗漏了一些东西。

这个怎么样:

public void go(){
    TabHost.TabSpec photospec = tabHost.newTabSpec("");
    URL url = null;
    try {
        url = new URL( text.getText().toString()); 
        photospec.setIndicator(url.getHost().replace("www."," ").replace(".com"," "));
        Intent photosIntent = new Intent(getBaseContext(),PhotosActivity.class);
        photosIntent.putExtra("URL1", text.getText().toString());
        photospec.setContent(photosIntent);
        tabHost.addTab(photospec);
    } catch (MalformedURLException e) {
        e.printStackTrace();
    }

}
于 2012-10-27T23:55:25.927 回答