Android非XML形式动态生成、调用页面的方法


本文实例讲述了Android非XML形式动态生成、调用页面的方法。分享给大家供大家参考。具体分析如下:

这个问题是这样的:我们不使用XML构建页面,而是使用程序构建新的页面,并在页面中添加各种控件。

一、构建新页面:

① 在src目录中添加一个class,命名为SignPage
② 在AndroidMainfest.xml中添加一个Activity:

<activity android:name="com.example.stest.SignPage"/>

注意,这句添加后表明SignPage页面为子页面,供主页面调用启动。

③ 打开SighPage.java,在其中添加一个EditText,并修改位置:

import android.os.Bundle;
import android.app.Activity;
import android.graphics.Color;
import android.view.*;
import android.widget.*;
import android.widget.RelativeLayout.LayoutParams;
public class SignPageA extends Activity{
 @Override
 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  RelativeLayout main = new RelativeLayout(this);
  //添加这个可以随意摆放
  //控件位置
  main.setBackgroundColor(0xFFFFFFFF);
  setContentView(main);
  EditText emailEditText=new EditText(this);
  LayoutParams params = new LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT);
  //这句一定要写,这样用来获取EditText对象,不写就会出错
  params.leftMargin=50;
  params.topMargin=50;
  emailEditText.setHint("Email");
  emailEditText.setTextColor(Color.BLACK);
  emailEditText.setGravity(Gravity.TOP);
  //emailEditText.setRawInputType(0x00000021);
  //0x00000081 PASSWORD
  main.addView(emailEditText, params);
 }
}

④ 在主页面中添加按钮,按钮事件如下:

Intent intent=new Intent(MainActivity.this,SignPageA.class);
   startActivity(intent);
   finish();
//调用子页面

希望本文所述对大家的Android程序设计有所帮助。


« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3