<pre name="code" class="html"><manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.test" >
<application android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name" android:supportsRtl="true"
android:theme="@style/AppTheme" >
<activity android:screenOrientation="portrait"
android:name=".MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:screenOrientation="portrait"
android:name=".AddContent"
android:label="@string/title_activity_add_content" >
</activity>
</application>
</manifest>
Activity主要用来与用户交互。
分析以上代码得到:
1.活动的注册声明是放在<application>标签中的,通过<activity>标签来对活动进行注册。
2.我们要使用android:name来指定注册的是哪个activity,这里的“.MainActivity”是什么意思呢?只不过是com.example.test.MainActivity的缩写而已。由于最外层的manifest标签中已经通过package属性指定了包名,所以在注册活动时就可以省略了。
3.android:label指定活动中标题栏的内容,标题栏是显示在活动最顶部的。需注意,给主活动指定的label不仅会成为标题栏中的内容,也会成为启动器中应用程序显示的名称。
4.<intent-filter>标签表示此活动是主活动,即点击桌面的应,用程序首先打开的就是这个活动。需要注意的是,如果你的应用程序中没有声明任何一个活动作为主活动,那么这个程序仍然可以正常安装,只是在桌面无法打开,这种程序一般供其他的应用在内部进行调用,如支付宝快捷支付服务。
隐藏标题栏的做法:
在onCreate()方法中添加如下代码:requestWindowFeature(Window.FEATURE_NO_TITLE);
切记,一定要加在setContentView()之前,不然会报错哦。
在活动中使用Toast
Toast是Android系统提供的一种特别好的提醒方式,在程序中可以使用它将一些短小的信息通知给客户,这些信息在一段时间后就会自动消失,并且不会占用屏幕空间,
Toast.makeText(MainActivity.this,"You clicked it!",Toast.LENGTH_SHORT).show();
在Android源码中的NotificationManagerService.java这个类中定义了两个静态变量,分别对应Toast.LENGTH_LONG(3.5s)和Toast.LENGTH_SHORT(2s)的值
Toast..makeText(Context context,CharSequence text, int duration).show() 中的duration只能设这两个值,其他值是没有用处的。
在NotificationManagerService.java的scheduleTimeoutLocked()
private void scheduleTimeoutLocked(ToastRecord r) {
mHandler.removeCallbacksAndMessages(r);
Message m = Message.obtain(mHandler, MESSAGE_TIMEOUT, r);
long delay = r.duration == Toast.LENGTH_LONG ?LONG_DELAY : SHORT_DELAY;
mHandler.sendMessageDelayed(m, delay);
}
static final int LONG_DELAY = 3500; // 3.5 seconds
static final int SHORT_DELAY = 2000; // 2 seconds<pre name="code" class="java">Toast.LENGTH_LONG=1;
public boolean onCreateOptionsMenu(Menu menu){
getMenuInflater().inflate(R.menu.main,menu);
return true;
}
理解Android Activity:注册、标题栏与Toast使用
本文介绍了Android中Activity的基本概念,包括如何在Manifest中注册Activity,使用android:name指定活动,以及android:label设置标题栏内容。同时,讨论了主活动的声明以及未声明主活动的情况。还详细讲解了如何隐藏标题栏,以及在Activity中使用Toast进行提示的步骤和注意事项,包括Toast的显示时长设置。
1114

被折叠的 条评论
为什么被折叠?



