Android中收集的一些小技巧

来源:互联网 发布:海岛奇兵20级野人数据 编辑:程序博客网 时间:2024/04/29 06:42

1.修改Activity进入和推出的动画:

overridePendingTransition(R.amin.XXX,R.amin.XX);

在amin文件夹中编写动画效果。

2.获取屏幕的宽度和高度:

int screenWidth = getWindowManager().getDefaultDisplay().getWidth(); // 屏幕宽(像素,如:480px)  

int screenHeight = getWindowManager().getDefaultDisplay().getHeight(); // 屏幕高(像素,如:800p)  

Log.e(TAG + " getDefaultDisplay", "screenWidth=" + screenWidth);
3.去除标题栏:
1) requestWindowFeature(Window.FEATURE_NO_TITLE);
注:在继承Activity可以实现去标题;在AppCompatActivity中无效。
2) 在style中将Theme.AppCompat.Light.DarkActionBar中的DarkActionBar改为NoActionBar;
4.按两次退出程序:

//返回键 连续按两次退出

//System.currentTimeMillis() 获取当前时间

private long exitTime=0;
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
    if(keyCode==KeyEvent.KEYCODE_BACK)
    {
        //如果两次点击之间时间大于2秒 再次判断,否则就就行退出
        if((System.currentTimeMillis()-exitTime)>2000)
        {
              Toast.makeText(MainActivity.this, "再点一次退出", Toast.LENGTH_SHORT).show();
              exitTime=System.currentTimeMillis();
        }
        else
        {
            finish();
            System.exit(0);
        }
        return true;
    }

    return super.onKeyDown(keyCode, event);

}

5.引用视频文件Uri的写法:

URi mUri=Uri.parse("android.resource://"+PlayVideo.this.getPackageName()+"/"+R.raw.demo);

videoDemo.setVideoURI(mUri);

videoDemo.start();

6.SharePreferences记住用户名和密码:

1)先记住密码:

SharedPreferencesshare=getSharedPreferences("Login",Activity.MODE_PRIVATE);

        SharedPreferences.Editor editor=share.edit();        editor.putString("Personname",Personname);        editor.putString("Password",Password);        editor.commit();

2)将用户名和密码读出来赋予EditText:

//从共享偏好设置中取出的代码是

SharedPreferences share =getSharedPreferences("Login", Activity.MODE_APPEND);

Personname=share.getString("Personname",Personname);

Password=share.getString("Password",Password);

etUser=(EditText)this.findViewById(R.id.et_User);

etUser.setText(Personname);

etPassword=(EditText)this.findViewById(R.id.et_Password);

etPassword.setText(Password);
读文件是放在onResume()中,写文件是在onPause()。

7.如何判断是否有SD卡?

通过如下方法:

Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)

如果返回true就是有Sdcard,返回false则没有。

8.使用权重如何让一个控件的宽度为父控件的1/3?

可以在水平方向的LinearLayout中设置weightSum为3,然后让其子控件的weight为1,这样这个控件的宽度就是

父控件的1/3.


0 0
原创粉丝点击