自学Android 02 活动
*活动:
1 <?xml version="1.0" encoding="utf-8"?> 2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 3 android:layout_width="match_parent" 4 android:layout_height="match_parent" 5 android:orientation="vertical" > 6 7 <Button 8 android:id="@+id/button_1" 9 android:layout_width="match_parent" 10 android:layout_height="wrap_content" 11 android:text="Button 1" 12 /> 13 </LinearLayout>
我们可以看出如何引用res下的资源:
1. 在代码中 R.string.hello_world 来引用
2. 在XML中 @string /hello_world 来引用
当我们想引用图片就把string部分换成drawable,布局文件是layout......
package com.example.activitytest; import android.app.Activity; import android.os.Bundle; public class FirstActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); setContentView(R.layout.first_layout); } }
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.activitytest" android:versionCode="1" android:versionName="1.0" > <uses-sdk android:minSdkVersion="15" android:targetSdkVersion="21" /> <application android:allowBackup="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > <activity android:name=".FirstActivity" android:label="This is FirstActivity"> <intent-filter> <action android:name="android.intent.action.MAIN"/> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> </manifest>
<intent-filter>标签中的两句:
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER" />
两句话说明本活动被定义为程序的主活动;即点击图标后首先打开的活动。
(一个活动没声明任何一个活动作为主活动,这个程序任然可以正常安装,一般作为第三方服务供其它的应用在内部进行调用,如支付宝快捷支付)
复习下前面的知识:
package com.example.activitytest; import android.app.Activity; import android.os.Bundle; import android.view.Window; public class FirstActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_NO_TITLE); //这句一定要在setContentView前执行!!!否则会报错的 setContentView(R.layout.first_layout); } }
安卓4.0加入了Action Bar,能对标题栏这个位置进行很多的操作。
package com.example.activitytest; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.view.Window; import android.widget.Button; import android.widget.Toast; public class FirstActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.first_layout); Button button1 = (Button) findViewById(R.id.button_1); button1.setOnClickListener(new OnClickListener(){ @Override public void onClick(View v) { // TODO Auto-generated method stub Toast.makeText(FirstActivity.this, "u clicked button 1", Toast.LENGTH_SHORT).show(); } }); } }
以上是使用Toast的方法1,还有方法2:
package com.example.activitytest; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.view.Window; import android.widget.Toast; public class FirstActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.first_layout); } public void selfDestruct(View view) { Toast.makeText(FirstActivity.this, "u clicked button 1", Toast.LENGTH_SHORT).show(); } } //FirstActivity.java
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <Button android:id="@+id/button_1" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="Button 1" android:onClick="selfDestruct" /> </LinearLayout> <!-- first_layout.xml -->
相关详细说明:
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。