安卓开发中的工作笔记

                                                     安卓开发中的工作笔记


1.有时候需要用到shape画图,画一个顶部的黄色直线,我们可以换一个思路:

   用两个矩形,一个黄色的矩形当背景,然后一个白色的矩形在上部,白色矩

   形设置一个top,需要多高的直线,就设置多大的top。

   如图为所需要的效果图:

               

   shape图的代码如下:

   <?xml version="1.0" encoding="utf-8"?>
   <selector xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:state_selected="true">

        <layer-list>

            <item>

                <shape android:shape="rectangle">

                    <solid android:color="#F6AE40" />

                </shape>                

            </item>

            <item 

             android:drawable="@drawable/bg_indicator_selected" android:top="3dp">

            </item>

        </layer-list>        

        </item>

    <item android:drawable="@drawable/bg_indicator_unselected" android:state_selected="false">

    </item>

    </selector>


   注意:layer-list:将多个图片按照顺序层叠起来,有时候为了方便我们可以直接

              在selector中直接画shape当做子item。


2.shape画图中的类型:rectangle 矩形   oval 椭圆形   line 直线   ring 戒指

   属性:

    <!-- 设置圆角 --> 
    <corners 
    android:radius="10dp"/> 


    <!-- 填充内容 --> 
    <solid 
    android:color="#ff0000"/> 


    <!-- 图片大小 --> 
    <size 
    android:width="40dp" 
    android:height="40dp"/> 


    <!-- 描边 --> 
    <stroke 
    android:color="#00ff00" 
    android:width="1dp" 
    android:dashWidth="2dp" 
    android:dashGap="1dp"/> 


   <padding 
   android:left="1dp"/> 


   <!-- 渐变颜色 --> 
   <gradient 
   android:startColor="#ff0000" 
   android:centerColor="#00ff00" 
   android:endColor="#0000ff" 
   android:angle="45"/> 


3.如何让listview加载完成后,直接定位到某一行?


  直接用listview.setSelection(int position);

   adapter.notifyDataSetInvalidated();//通知adapter数据有变化

   列如: 

          listview.setSelection(10);//定位到10行


4.像足球联赛赛程一样,定位到当前最近的一场比赛。用ExpandableListView

   进行分组显示。在获取数据的时候对数据进行遍历,找出和当前时间最近的

   那场比赛的时间,它对应的位GroupPosition,ChildPosition就是当前定位

   的参数。如下:


         //获取当前的时间     mTodayTime

         mTodayTime = TimeTool.getNowTime();
// 遍历数据  Group存放在 mGrouplist中  Chrid存放在mChridlist中

        for (int j = 0; j < mGrouplist.size(); j++) {
for (int i = 0; i < mChridlist.get(j).size(); i++) {
TeamSchedules teamSchedules = mChridlist.get(j).get(i);
if (mTodayTime<=teamSchedules.matchDate) {
// 同日期的多场比赛,取最前面的那一场为当前的最新比赛
if (mMatchDate!=teamSchedules.matchDate) {
mMatchDate = teamSchedules.matchDate;
mGroupPosition = j;
mChildPosition = i;
}
   }
}
}
mScheduleExListview.setSelectedChild(mGroupPosition,mChildPosition, true);
expandableAdapter.notifyDataSetChanged();


5.一个字符是一个数字,一个英文字母,一个空格或者一个符号(不是全部符号都是一个字符)一个汉字=两个字符!

  





  



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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值