1 package com.hanqi.myapplication; 2 3 import android.content.ComponentName; 4 import android.content.Intent; 5 import android.net.Uri; 6 import android.os.Bundle; 7 import android.support.v7.app.AppCompatActivity; 8 import android.util.Log; 9 import android.view.View; 10 import android.widget.Button; 11 12 public class MainActivity extends AppCompatActivity { 13 14 //回调方法 (on开头的方法都是) 15 //在创建时自动调用 16 @Override 17 protected void onCreate(Bundle savedInstanceState) { 18 //调用父类的回调方法 19 super.onCreate(savedInstanceState); 20 //设置内容视图文件 21 //建立Activity和Layout文件之间的关联 22 setContentView(R.layout.test_linearlayout); 23 //1.获得这个组件 24 Button bt2 = (Button)findViewById(R.id.button2); 25 //2.操作这个组件 26 // bt2.setText("新按钮"); 27 //日志输出 28 System.out.print("日志输出=应用开始运行"); 29 Log.v("HANQI", "Verbose级别的日志信息"); 30 Log.d("HANQI", "Debug级别的日志信息"); 31 Log.i("HANQI", "Info级别的日志信息"); 32 Log.w("HANQI", "Warning级别的日志信息"); 33 Log.e("HANQI", "Error级别的日志信息"); 34 } 35 public void login_onClick(View v) 36 { 37 //打开新的Activity 38 //1.创建意图 显式意图 39 Intent intent = new Intent(); 40 //定义显式意图 41 ComponentName componentName = new ComponentName(this,TextActivity.class); 42 intent.setComponent(componentName); 43 intent.putExtra("name", "意图传递的值"); 44 intent.putExtra("name1", "意图传递的值1"); 45 46 //2.发起意图 47 startActivity(intent); 48 } 49 public void bt2_onClick(View v) 50 { 51 //发起隐式意图 52 //打开拨打电话的界面 53 //系统已经预先定义了常用功能的Action的字符串常量 54 Intent intent2 = new Intent(Intent.ACTION_DIAL); 55 //intent2.setAction(Intent.ACTION_DIAL); 56 57 //构造Uri 58 Uri uri = Uri.parse("tel:110"); 59 60 //intent2.addCategory(""); 61 62 //设置data 63 intent2.setData(uri); 64 65 //intent2.setType(""); 66 //intent2.setDataAndType(uri,""); 67 startActivity(intent2); 68 } 69 70 public void bt3_onClick(View v) 71 { 72 //返回桌面 73 Intent intent3 = new Intent(Intent.ACTION_MAIN); 74 intent3.addCategory(Intent.CATEGORY_HOME); 75 startActivity(intent3); 76 } 77 }
1 package com.hanqi.myapplication; 2 3 import android.app.Activity; 4 import android.content.Intent; 5 import android.os.Bundle; 6 import android.util.Log; 7 import android.view.View; 8 import android.widget.EditText; 9 import android.widget.Toast; 10 11 //1.继承Activity 12 /** 13 * Created by lenovo on 2016/4/22. 14 */ 15 public class TextActivity extends Activity { 16 17 //成员变量 18 EditText et1; 19 EditText et2; 20 EditText et3; 21 //2.重写onCreate(),关联Layout文件 22 //onCreate()是一个回调方法:在满足特定条件下自动调用的方法;方法名一般on开头 23 24 @Override 25 protected void onCreate(Bundle savedInstanceState) { 26 super.onCreate(savedInstanceState); 27 28 //关联 29 setContentView(R.layout.message_relativelayout); 30 //初始化工作 31 //获取Layout文件中定义的组件 32 33 et1=(EditText)findViewById(R.id.et1); 34 et2=(EditText)findViewById(R.id.et2); 35 et3=(EditText)findViewById(R.id.et3); 36 Log.e("TAG","onCreat()被调用"); 37 38 //得到意图 39 Intent intent = getIntent(); 40 String strname = intent.getStringExtra("name"); 41 String strname1 = intent.getStringExtra("name1"); 42 //intent.getExtras(); 43 Log.e("TAG","意图传递的数据="+strname); 44 Log.e("TAG","意图传递的数据1="+strname1); 45 // if(savedInstanceState!=null&&!savedInstanceState.isEmpty()) 46 // { 47 // et1.setText(savedInstanceState.getString("et1")+"恢复之后的"); 48 // et2.setText(savedInstanceState.getString("et2")); 49 // et3.setText(savedInstanceState.getString("et3")); 50 // } 51 } 52 53 //保存状态 54 @Override 55 protected void onSaveInstanceState(Bundle outState) { 56 super.onSaveInstanceState(outState); 57 Log.e("TAG", "保存应用状态"); 58 59 outState.putString("et1", et1.getText().toString()); 60 outState.putString("et1",et2.getText().toString()); 61 outState.putString("et1",et3.getText().toString()); 62 } 63 64 //恢复状态 65 @Override 66 protected void onRestoreInstanceState(Bundle savedInstanceState) { 67 super.onRestoreInstanceState(savedInstanceState); 68 Log.e("TAG", "恢复应用状态"); 69 70 et1.setText(savedInstanceState.getString("et1")+"恢复之后的"); 71 et2.setText(savedInstanceState.getString("et2")); 72 et3.setText(savedInstanceState.getString("et3")); 73 74 } 75 76 //启动 77 @Override 78 protected void onStart() { 79 super.onStart(); 80 Log.e("TAG","onStart()被调用"); 81 } 82 //重启 83 @Override 84 protected void onRestart() { 85 super.onRestart(); 86 Log.e("TAG", "onRestart()被调用"); 87 } 88 //继续 89 @Override 90 protected void onResume() { 91 super.onResume(); 92 Log.e("TAG", "onResume()被调用"); 93 } 94 //暂停 95 @Override 96 protected void onPause() { 97 super.onPause(); 98 Log.e("TAG", "onPause()被调用"); 99 } 100 //停止 101 @Override 102 protected void onStop() { 103 super.onStop(); 104 Log.e("TAG", "onStop()被调用"); 105 } 106 //销毁 107 @Override 108 protected void onDestroy() { 109 super.onDestroy(); 110 Log.e("TAG", "onDestroy()被调用"); 111 } 112 //点击事件方法 113 public void bt_OnClick(View v) 114 { 115 //显示提示信息 116 //方法链 117 Toast.makeText(TextActivity.this, "消息发送成功", Toast.LENGTH_SHORT).show(); 118 } 119 public void close_OnClick(View v) 120 { 121 //关闭应用 122 finish(); 123 } 124 }
1 <?xml version="1.0" encoding="utf-8"?> 2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 3 android:orientation="vertical" 4 android:layout_width="match_parent" 5 android:layout_height="match_parent" 6 android:padding="10dp"> 7 8 <LinearLayout 9 android:layout_width="match_parent" 10 android:layout_height="wrap_content"> 11 <TextView 12 android:layout_width="wrap_content" 13 android:layout_height="wrap_content" 14 android:text="用户名:"/> 15 <EditText 16 android:layout_width="match_parent" 17 android:layout_height="wrap_content" 18 android:hint="请输入用户名"/> 19 </LinearLayout> 20 <LinearLayout 21 android:layout_width="match_parent" 22 android:layout_height="wrap_content"> 23 <TextView 24 android:layout_width="wrap_content" 25 android:layout_height="wrap_content" 26 android:text="密码:"/> 27 <EditText 28 android:layout_width="match_parent" 29 android:layout_height="wrap_content" 30 android:hint="请输入密码" 31 android:inputType="textPassword" 32 android:maxLength="6"/> 33 </LinearLayout> 34 35 <LinearLayout 36 android:layout_width="match_parent" 37 android:layout_height="wrap_content"> 38 <Button 39 android:layout_width="0dp" 40 android:layout_height="wrap_content" 41 android:text="显式意图" 42 android:id="@+id/button" 43 android:layout_weight="1" 44 android:onClick="login_onClick"/> 45 46 <Button 47 android:layout_width="0dp" 48 android:layout_height="wrap_content" 49 android:text="隐式意图" 50 android:id="@+id/button3" 51 android:layout_weight="1" 52 android:onClick="bt2_onClick"/> 53 <Button 54 android:layout_width="0dp" 55 android:layout_height="wrap_content" 56 android:text="返回桌面" 57 android:id="@+id/button4" 58 android:layout_weight="1" 59 android:onClick="bt3_onClick"/> 60 61 <Button 62 android:layout_width="wrap_content" 63 android:layout_height="wrap_content" 64 android:text="New Button" 65 android:id="@+id/button2" 66 android:layout_gravity="center" 67 android:textSize="20sp" 68 android:textColor="@color/colorPrimary" 69 android:background="@drawable/anniu05" 70 android:visibility="gone"/> 71 </LinearLayout> 72 </LinearLayout>
1 <?xml version="1.0" encoding="utf-8"?> 2 <manifest xmlns:android="http://schemas.android.com/apk/res/android" 3 package="com.hanqi.myapplication"> 4 5 <uses-permission android:name="android.permission.CALL_PHONE"></uses-permission> 6 7 <application 8 android:allowBackup="true" 9 android:icon="@mipmap/ic_launcher" 10 android:label="@string/app_name" 11 android:supportsRtl="true" 12 android:theme="@style/AppTheme"> 13 14 <activity android:name=".MainActivity"> 15 <intent-filter> 16 <action android:name="android.intent.action.MAIN" /> 17 18 <category android:name="android.intent.category.LAUNCHER" /> 19 </intent-filter> 20 </activity> 21 <activity android:name=".TextActivity"> 22 <intent-filter> 23 <action android:name="android.intent.action.MAIN" /> 24 25 <category android:name="android.intent.category.LAUNCHER" /> 26 </intent-filter> 27 </activity> 28 29 </application> 30 31 </manifest>