zoukankan      html  css  js  c++  java
  • Android 有用代码片段总结

    在Android开发过程中,不同的项目之间总会复用到一些有用的代码,这里记录下来,方便以后使用。

    一、Android判断点击区域是否在指定的View之内

        @Override
        public boolean onInterceptTouchEvent(MotionEvent ev)  
        {   
           Rect rect = new Rect();
           View.getGlobalVisibleRect(rect);
    
           if (rect.contains((int)ev.getRawX(), (int)ev.getRawY()))
           {
                return false;
            }
          
            return super.onInterceptTouchEvent(ev);
        }

     二、ListView点击没有反应的问题(一般是自己定义的item中存在ImageButton, Button, CheckBox等自控件)

    原因一般是自己定义的item中含有Button或者Checkable的子控件,获取了焦点,点击item时,只有这些子控件响应,item本身没有响应。

    解决的办法是在item.xml的layout中加入属性

    android:descendantFocusability="blocksDescendants" 

    三、旋转屏幕时禁止Activity重启

    android3.2以前,我们习惯在AndroidManifest.xml 中添加activity属性android:configChanges="orientation|keyboardHidden" , 但是在android 3.2以后的版本需要增加“Screen Size”,即android:configChanges="orientation|keyboardHidden|screenSize",才可以禁止Activity重启。

    SDK描述如下,在“Handling the Configuration Change Yourself”段落中。

    http://developer.android.com/guide/topics/resources/runtime-changes.html

    四、获取AndroidManifest.xml中配置的应用版本号

       public String getVersion()
       {
          try
          {
             PackageManager manager = this.getPackageManager();
             PackageInfo info = manager.getPackageInfo(this.getPackageName(), 0);
             String version = getString(R.string.version) + info.versionName;
             return version;
          }
          catch (Exception e)
          {
             e.printStackTrace();
             return "1.0";
          }
       }
  • 相关阅读:
    类的高内聚低耦合
    面向对象是三个特征:封装、继承、多态
    抽象类和接口
    remoting和webservice
    装箱和拆箱
    数据库
    遍历TextBox控件
    索引类型
    .NET和C#有什么区别
    三层架构
  • 原文地址:https://www.cnblogs.com/shaddock2013/p/3017085.html
Copyright © 2011-2022 走看看