android 经验总结

    技术2022-05-12  14

    做android项目以来,经验总结如下:

     

    1) 在使用布局管理器的时候,布局管理器的两个属性android:layout_width和android:layout_height是必须要设的属性。

    2) 对一个控件设置其属性可以在配置文件中设置,也可以在代码中设置,我的经验是:如果在代码中设置就只在代码中设置,如果在配置文件中设置就只在配置文件中设置,不要两者结合起来,容易不好使。

    3)在调整各个控件布局的时候,为了看清各个view的位置,大小,可以设置view的背景颜色。

    4)为控件设置颜色的时候,在要是8位16进制数,前两位是透明度,后六位是RGB值,如果不设前两位透明度控件的,看不见view。

    5)在android 中使用定时器,用线程容易出问题。要用下面的方法:用handle发消息。另外线程中不能有对窗口的操作,反正有设计到对窗口的操作,需要发消息,然后再利用handle接收消息。

      


    Thread processThread = new Thread(processRunnable); private Runnable processRunnable = new Runnable() { public void run() { while (true) { Message msg = new Message(); msg.what = 0; handler.sendMessage(msg); try { Thread.sleep(1000); } catch (InterruptedException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } } }; private Handler handler = new Handler() { @Override public void handleMessage(Message msg) { if(msg.what==0){ //填写执行的内容 } } catch (JSONException e) { // TODO Auto-generated catch block e.printStackTrace(); } } super.handleMessage(msg); } };

    6)合理规范的命名变量,方法,对象,类。一定不能将对象的名称和变量内部其他对象的名称弄的容易混淆。

    案例:我有一个类名称:SeatInfo 我在这个类里面创建一个ImageView结果也叫seatInfo,调试的时候,我通过得到tag来做处理,我在另外一个类中读取tag我总以为读取的是类SeatInfo的其实我获取的是imageView的tag。

     

     7)在RelativeLayout中。注意android:layout_blow 和android:layout_marginBottom 这两个属性

    案例:如果有RelativeLayout中有3个ImageView。我想让第一个在顶部,第三个在底部

    设置第二个的属性的时候可以用android:layout_marginBottom ="80px" 这个属性不能和android:layout_blow="@id/imageView" 合用。

    8)在调试一大段代码的时候,可以分层,先把注释掉不部分代码,然后再逐步增加代码。直至最后。

    9)在调试布局的时候,根据效果图,进行margin或者pading的值设定的时候,可以先用画图工具将图片打开,测量一下像素距离,这样很方便。也很精确。

     


    最新回复(0)