Android开发杂谈

26 篇文章 0 订阅

使用数组循环下标出错:

当使用

       for(int i:数组名)

当使用一次,再次循环使用时会出现下标越界问题

 

ArrayList和数组

ArrayList、List、数组之间的区别,用数组存储Button时会出现出错,但是使用ArrayList<Button>存储Button操作则很顺利通过。

 

Android Device Monitor

当使用Android Studio 3.0以上版本时,无法通过Tools--Android 打开Android Device Monitor,先安装Java 的JDK,然后配置JAVA_HOME变量:

新建一个系统变量

变量名:JAVA_HOME

值:JDK安装的路径;

找到系统变量Path

点击编辑

Path变量名不变

在值的后面加上

%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;

然后找到Android的SDK文件夹,一般在USER\AppData\Local\Android\Sdk,进入tools,找到monitor.bat,双击打开等约1-5秒就可以打开DDMS了。

 

Android Studio使用ADB 查询数据库问题:

1、ADB要使用先要加环境变量Path,路径是:“\Android\SDK\platform-tools”

2、数据库是在/data/data/包名/databases/ 下,记得用cd命令进入时两边的   "/"  都要输入

3、sqlit3使用SQL命令查询时记得命令后面有    "';"  例如:

select * from BOOK;
 

 

LinearLayout问题:

当使用线性布局时,如何像百分比布局那样,使控件一一对齐呢?

诀窍就是把控件设置一个宽度值,之后再设定layout_weight值。

 <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_margin="5dp"
            android:orientation="horizontal"
            android:weightSum="3">

            <TextView
                android:layout_width="100dp"
                android:layout_height="match_parent"
                android:text="@string/thisMonthStand"
                android:layout_weight="1"

                />

            <TextView
                android:id="@+id/thisMonthStand"
                android:layout_width="100dp"
                android:layout_height="wrap_content"
                android:text="当前数据"
                android:layout_weight="2"
                />

        </LinearLayout>

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_margin="5dp"
            android:orientation="horizontal"
            >

            <TextView
                android:layout_width="100dp"
                android:layout_height="wrap_content"
                android:text="@string/lastMonthSurplus"
                android:layout_weight="1"
                android:gravity="left"

                />

            <TextView
                android:layout_width="100dp"
                android:layout_height="wrap_content"
                android:text="当前数据"
                android:layout_weight="2"
                />

        </LinearLayout>

 

写程序最容易出错的是字符串,特别是涉及数据库操作,每次没有任何提示的出错,优先检查字符串有没有拼写错误。

 

EditText判断输入是否为空方法:

经常需要使用EditText输入数据,控件自身带属性判断输入数据类型,判断是否为空却有很多方法:

1、"".equals(edit.getText().toString().trim()

2、android提供了一个专门判断空字符串的方法:TextUtils.isEmpty(edit.getText())

3、edit.getText().toString()==null,这方法测试了,会出错,edit.getText().toString()!=""也无法进行判断

4、edit.getText().toString().length()==0,改进后改为 edit.getText().toString().trim().length()==0

个人比较推荐第2和第4种方法。

 

从EditText读取出数字后如何转换数据类型及int,float等转为String:

主要是使用parseInt parseFloat parseDouble

public class ConvertUtil {
  
    //把String转化为float
    public static float convertToFloat(String number, float defaultValue) {
        if (TextUtils.isEmpty(number)) {
            return defaultValue;
        }
        try {
            return Float.parseFloat(number);
        } catch (Exception e) {
            return defaultValue;
        }
  
    }
  
    //把String转化为double
    public static double convertToDouble(String number, double defaultValue) {
        if (TextUtils.isEmpty(number)) {
            return defaultValue;
        }
        try {
            return Double.parseDouble(number);
        } catch (Exception e) {
            return defaultValue;
        }
  
    }
  
    //把String转化为int
    public static int convertToInt(String number, int defaultValue) {
        if (TextUtils.isEmpty(number)) {
            return defaultValue;
        }
        try {
            return Integer.parseInt(number);
        } catch (Exception e) {
            return defaultValue;
        }
    }
}
//Double, Float, Long 转成字串的方法大同小异.
String s1 = String.valueOf(i);

String s2 = Integer.toString(i); 

String s3 = "" + i; 
DecimalFormat.format()输出字符会自动进行四舍五入。

Activity的生命周期:(基本知识,但是还是要经常温故而知新)

Activity的生命周期

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值