Android 中一些小问题的解决办法 – 热爱改变生活
我的GitHub GitHub |     登录
  • If you can't fly, then run; if you can't run, then walk; if you can't walk, then crawl
  • but whatever you do, you have to keep moving forward。
  • “你骗得了我有什么用,这是你自己的人生”
  • 曾有伤心之地,入梦如听 此歌

Android 中一些小问题的解决办法

Android sinvader 3837℃ 0评论

控件设置背景图像后设置 padding

控件的样式被设置成了这个样子的
tv_background_padding
在大部分的手机上面这个设置是没有问题的,但是在一些小屏幕手机上面会出现点击之前或者点击之后这个 padding 的效果突然没有的情况,这时候就需要去手动设置了

  1. tv.setBackgroundResource(R.drawable.chufang_selected_small);
  2. tv.setPadding(mPadding, mPadding, mPadding, mPadding);

上面两个的顺序不可以改变,改变之后设置的 padding 会失效

多行文本框光标放到左上角

  1. android:gravity="top"

6.0 Android 请求权限

Activity

在将要进行会使用权限的动作的时候
code permission1:

  1. if (ContextCompat.checkSelfPermission(this, Manifest.permission.CAMERA)
  2. != PackageManager.PERMISSION_GRANTED) {
  3. //申请 CAMERA 权限
  4. ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.CAMERA},
  5. REQUEST_CODE_CAMERA);
  6. } else {
  7. openCamera();
  8. }

接着可以在回调中获得请求权限是否成功的结果
code permission2:

  1. @Override
  2. public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) {
  3. super.onRequestPermissionsResult(requestCode, permissions, grantResults);
  4. doNext(requestCode, grantResults);
  5. }
  6.  
  7. private void doNext(int requestCode, int[] grantResults) {
  8. if (requestCode == REQUEST_CODE_CAMERA) {
  9. if (grantResults[0] == PackageManager.PERMISSION_GRANTED) {
  10. // Permission Granted
  11. openCamera();
  12. } else {
  13. UIHelper.ToastMessage(this, "没有打开照相机的权限");
  14. }
  15. }
  16. }

fragment

在 fragment 中使用的时候只要将 code permission1 整体替换成下面的代码就可以,其他不用变:

  1. requestPermissions(new String[]{Manifest.permission.CALL_PHONE},
  2. REQUEST_CODE_CALLPHONE);

APP 内部使用默认字体大小

一般来说我们程序中字体的大小都是跟随者系统去变得,如果系统字体变得很大的话,我们的布局可能就会出现错位,使用下面的代码可以让 app 使用默认字体大小,不跟随系统变化
把下面的代码放到 activity 中,最好是建一个基类 Activity

  1. @Override
  2. public Resources getResources() {
  3. Resources res = super.getResources();
  4. Configuration config = new Configuration();
  5. config.setToDefaults();
  6. res.updateConfiguration(config, res.getDisplayMetrics());
  7. return res;
  8. }
¥ 有帮助么?打赏一下~

转载请注明:热爱改变生活.cn » Android 中一些小问题的解决办法


本博客只要没有注明“转”,那么均为原创。 转载请注明链接:sumile.cn » Android 中一些小问题的解决办法

喜欢 (1)
发表我的评论
取消评论
表情

如需邮件形式接收回复,请注册登录

Hi,你需要填写昵称和邮箱~

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址