温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

10天学通Android开发(2-1)-核心组件Activity

发布时间:2020-08-11 14:46:05 来源:网络 阅读:370 作者:wanxl 栏目:移动开发

      Activity、Service、Broadcast Receiver、Content Provide为Android四大核心组件,Activity是与用户交互的窗口,有三种状态:运行、暂停、停止

七个方法:


   protected void onCreate(Bundle savedInstanceState);

     protected void onStart();

     protected void onRestart();

     protected void onResume();

     protected void onPause();

     protected void onStop();

     protected void onDestroy();


 

生命周期图,见:

http://developer.android.com/reference/android/app/Activity.html


可以看到:

运行状态:在OnResume之后

暂停状态:onPause后,暂停状态时,如有其它优先更高的程序运行需要内存,可能会停止这程序,释放内存

onPause—OnResume

onStop->>onStart


 

小贴士:调整窗口(代码)字体大小

WindowsàPreferenceàGeneral->Appearance->Colorsand Fonts->Text FontàEdit


案例Day2-1:

1)新建 Android Application Project

2)创建新类Show1,

扩展自Activity,继承Superclass点击”Browse…”,输入:Activity,会选中“android.app.Activity

3)该类配置到AndroidManifest.xml

双击打开AndroidManifest.xml,在可视化界面中,ApplicationNodes,”Add”—”Activity”后,右侧,”Browse”,添加刚才的新类,也可直接在AndroidManifest.xml添加一行:

 <activity android:name="Show1"></activity>

4)添加新类的布局

类,添加一内容布局,右击:res->layout,添加Android XML File,取名为:show1,布局方式:LinearLayout

添加一文本:

 <TextView
        android:id="@+id/txtMyView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="MyView" />

5)新类与内容布局绑定,在新类代码文件中添加setContentView(R.layout.show1),如下

public class Show1 extends Activity {
    @Override
     protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
         setContentView(R.layout.show1);

6)在主页面布局中,添加按钮事件,传递字符串给Show1:


public class MainActivity extends ActionBarActivity {

 private Button btnStart;
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
       
        btnStart=(Button) findViewById(R.id.butStart);
       
        btnStart.setOnClickListener(new View.OnClickListener() {
   
   @Override
   public void onClick(View v) {
    Intent i=new Intent(MainActivity.this,Show1.class);
    Bundle data=new Bundle();
    data.putString("txt","Hello Show1");
    i.putExtras(data);
    startActivityForResult(i,0);
    
    finish();//如有这,则会关闭此页
   }
  });
    }

7)show1类中接受字符串:

public class Show1 extends Activity {
 private TextView txtMyView;
 
  @Override
     protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
         setContentView(R.layout.show1);
        
         txtMyView=(TextView)findViewById(R.id.txtMyView);
        Bundle data=getIntent().getExtras();         
         String txt=data.getString("txt");
         txtMyView.setText(txt);
        
     }
}





向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI