Android界面设计一些总结
如何去除界面顶部标题栏title:
有两种方法:1、在程序中添加。setContent(R.layout.main)之前添加去除title语句——requestWindowFeature(Window.FEATHER_NO_TITLE);去出标题栏TITLE。
2、在AndroidManifest.XML中添加。注册Activity时加上如下语句就可以实现:
<activity:android:name=”.Activity”
Android:theme=”@theme=style/Theme.NoTitleBar”></activity>
如何去除状态栏:getWindow().setFlags(WindowManager.LayoutParams. FLAG_FULLSCREEN , WindowManager.LayoutParams. FLAG_FULLSCREEN);
如何从一个Activity中获取另一个Activity的context?
在前一个Activity中加一个当前的static对象,在create里面将this赋给它,并创建一个static方法,获取这个对象。这样就可以在后一个Activity中直接通过调用静态方法来获取先前一个Activity的引用。如下:
(Android程序中访问资源时需要提供Context,一般来说只有在各种component中(Activity, Provider等等)才能方便的使用api来获取Context, 而在某些工具类中要获取就很麻烦了。为此,我们可以自定义一个Application类来实现这种功能。)
public class MyApplication extends Application {
private static MyApplication instance;
public static MyApplication getInstance(){
return instance;
}
Override
public void onCreate(Bundler savedInstanceStates){
super.onCreate(savedInstanceStates);
instance = this;
}
}
如何实现应用程序的开机自启动?
Android提供一个BroadcastReceiver组件,用来对应用程序的运行环境进行监测,并用来对各种事件进行处理。
使用BroadcastReceiver非常简单。只需要在AndroidManifest.XML中或者在代码中添加进行相应的注册。这样之后我们就能通过BroadcastReceiver中相应的onReceive()方法来执行相应的操作。
步骤如下:
1、 创建一个类如MyReceiver,继承自抽象类BroadcastReceiver:
public class MyReceiver extends BroadcastReceiver {
public void onReceive(Context context, Intent intent){
if(intent.getAction().equals(Intent.ACTION_BOOT_COMPLETED)){
Intent bootActivityIntent= new Intent (context, MainActivity.class);
//MainActivity.class为主页面类
bootActivityIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(bootActivityIntent);
}
}
}
2、 在AndroidManifest中配置Receiver
<receiver android:name=”.MyReceiver”>
<intent-filter>
<action android:name=”android.intent.action_BOOT_COMPLETED”></action>
</intent-filter>
</receiver>
3、 我们需要对我们的应用进行相应的权限许可,只有通过这种形式才能真正让我们的程序实现开机自启动,我们需要在AndroidManifest中进行如下配置:
<uses-permission android:name=”android.permission.RECEIVE_BOOT_COMPLETED”/>
如何将Button按钮触发的事件转换为程序直接执行的(即将按钮去除,按钮中的代码在程序启动是直接顺序执行)?
这非常简单,其实就是将监听的部分去除,将onClick()中的代码放在onCreate()中直接执行即可。如:
mBtn.setOnClickListener(new OnClickListener(){
public void onClick(View v){
Intent intent = new Intent();
intent.setClass(mIntent.this, mIntent2.class);
startActivity(intent);
}
});
改写为:
Intent intent = new Intent();
intent.setClass(mIntent.this, mIntent2.class);
startActivity(intent);
创建对象后切勿忘记为其分配内存!如MediaPlayer player;(创建了一个player对象) player=new MediaPlayer();(分配)
设置背景图片的透明度?
找到要设置透明度的背景图片的layout的id(注意设置layout 的id):View v=findViewById(R.id.content);
设置透明度值为0~255:v.getBackground().setAlpha(100);