Android入门-SayHello实现页面跳转

可在直接上次以第三种实现SayHello的基础上进行复制并编辑

本次目标效果


1、复制项目SayHello命名为HelloProperty

2、更改actiity_main.xml为

<span style="font-size:18px;"><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    android:background="@drawable/bg"
    tools:context=".MainActivity" >

    <TextView
        android:id="@+id/tvNamePrompt"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="130dp"
        android:textSize="25sp"
        android:text="@string/tvNamePrompt">
        
    </TextView>

    <EditText
        android:id="@+id/etName"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/tvNamePrompt"
        android:layout_below="@+id/tvNamePrompt"
        android:layout_marginTop="25dp"
       <strong> android:background="@android:drawable/edit_text"</strong>
        android:ems="8" >

        <requestFocus />
    </EditText>

    <Button
        android:id="@+id/btnClick"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignRight="@+id/etName"
        android:layout_below="@+id/etName"
        android:layout_marginRight="46dp"
        android:layout_marginTop="22dp"
        android:text="@string/btnClick"
        android:onClick="SaysHello" />

</RelativeLayout></span>
3、MainActivity.java

public class MainActivity extends Activity {
	private EditText etName;
    private static final String TAG="MainActivity";
    @Override
    protected void onCreate(Bundle savedInstanceState) {
    
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        etName=(EditText) findViewById(R.id.etName);
        
    }
    public void SaysHello(View v){
    	String name=etName.getText().toString();
		Intent intent=new Intent();//构建意图
		intent.setClass(this,ShowActivity.class);//设置想要跳转到的类
		intent.putExtra("name", name);//数据单个传递方式
		startActivity(intent);//将意图传过去启动Activity
		
		
    }
			


}
4、ShowActivity.java

public class ShowActivity extends Activity {
	private String name;
	private TextView tvShow;
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_show);
		getData();//定义一个私有方法获取数据
		initViews();//组件的获取
		bindData();//绑定控件
	}

	private void bindData() {//tvShow和数据的绑定
		// TODO Auto-generated method stub
		tvShow.setText("你好"+name);
	}

	private void initViews() {
		// TODO Auto-generated method stub
		tvShow=(TextView) findViewById(R.id.tvShow);
	}

	private void getData() {
		// TODO Auto-generated method stub
		name=getIntent().getStringExtra("name");
	}


}
5、activity_show.xml

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    android:background="@android:color/holo_blue_light"
    tools:context=".ShowActivity" >

    <TextView
        android:id="@+id/tvShow"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="190dp"
        android:text="Large Text"
        android:textAppearance="?android:attr/textAppearanceLarge" />

</RelativeLayout>
7、不要忘记在AndroidManifest.xml中声明ShowActivity
        <activity
            android:name=".ShowActivity"
            android:label="@string/title_activity_show" >
        </activity>

8、数据的传递包括批量传递和单个传递,此处使用的是单个传递

9、此为显式意图






已标记关键词 清除标记
相关推荐
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页