链接android中的两个活动

时间:2011-09-29 10:48:22

标签: android android-activity

我正在编写一个简单的Android应用程序,你在一个盒子里写下你的名字,然后点击确定,一个新页面将显示你的名字......问题是当你点击确定没有任何反应。

这里是主要活动

public class Click extends Activity implements OnClickListener{

        @Override
        public void onClick(View v) {
                // TODO Auto-generated method stub
                String TypedText = (String)MyText.getText().toString();
                Intent MyInt = new Intent(this, HelloWorld.class);
                MyInt.putExtra("user", TypedText);
                this.startActivity(MyInt);     
                Bundle Retrive = this.getIntent().getExtras();
                Retrive.getString("user");
                setContentView(R.id.Text);
                TextView TextV = (TextView)findViewById(R.id.Text);
                TextV.setText("user");                   

        }
        android.widget.EditText MyText;

        public void OnCreate (Bundle savedInstanceState){
                super.onCreate(savedInstanceState);
                this.setContentView(R.layout.name_getter);
                MyText = (EditText)this.findViewById(R.id.editText1);
                this.findViewById(R.id.button1);
                android.widget.Button RefBut = (Button)this.findViewById(R.id.button1);
                RefBut.setOnClickListener(this);

                }

这里是清单

    <?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
     package="edu.calpoly.android.lab1Sada"
     android:versionCode="1"
     android:versionName="1.0">
    <uses-sdk android:minSdkVersion="4" />

    <application android:icon="@drawable/icon" android:label="@string/app_name">
        <activity android:name=".Click"
                 android:label="@string/app_name">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity android:name="HelloWorld" ></activity>

    </application>
</manifest>

启动Android模拟器将启动第一个活动点击,但该应用程序不会显示新视图...

2 个答案:

答案 0 :(得分:1)

我不知道你在做什么,但你可以通过这种方式从/向活动发送/检索数据:

为此你需要理解Intent的概念。

来自第一项活动:

Intent i = new Intent(this, ActivityTwo.class);
i.putExtra("name", "paresh");
i.putExtra("technology", "android");
startActivity(i);

来自第二项活动:

Bundle extras = getIntent().getExtras();
if (extras == null) {
    return;
}
String strName = extras.getString("name");
String strTechnology = extras.getString("technology");

仍然可供参考,以下文章了解更多相同内容:Android Intents

答案 1 :(得分:0)

您必须传递活动1中的文本,并在活动2中将其作为捆绑包接收。

通过helloworld程序作为你的第一个android教程。

只需扩展活动即可。您不需要提及超类的整个包。