zoukankan      html  css  js  c++  java
  • Android笔记

    GridView

    代码:
    android:verticalSpacing="8dp"
    android:horizontalSpacing="8dp"
    说明:
    gridview每个格子之间的间隔(垂直,水平)
    140320:GridView, ListView更改点击背景
    gridView.setSelector(new ColorDrawable(Color.TRANSPARENT));

    ListView

    140324:listview 没分割线
    android:divider="#FFCC00"

     

    //140504listview 的onItemClick拿数据
    mListView.setOnItemClickListener(new OnItemClickListener() {
    
                @Override
                public void onItemClick(AdapterView<?> parent, View view,
                        int position, long id) {
                    ListView lv = (ListView) parent;
                    ListViewItem data = (ListViewItem) lv.getItemAtPosition(position);
                    Intent intent = new Intent(mContext, Demo.class);
                    intent.putExtra(Demo.KEY, data);
                    startActivity(intent);
                }
    });

     

     

    Layout

    layout_width和layout_height中fill_parent已经过时,使用match_parent替换
    140317:layout_gravity与gravity的区别
    layout_gravity是组件相对父窗体显示的位置(注意不要把组件的width设成match_parent,否则layout_gravity无效)
    grivaty是组件内内容的显示的位置
    居右,居左
    android:layout_alignParentLeft="true"
    android:layout_alignParentRight="true"
    140320:layout_weight数值越小,占的位置越大
    如果要高weight,则layout_height="0",如果要宽weight,则layout_width='0' android:layout_weight="1"(占6分之5的位置) android:layout_weight="5" (点6分之1的位置)
    140324:LinearLayout里面的组件没有居左居右(即:组件里面的android:layout_gravity无效, FrameLayout里面的组件用这个属性才有效)
    140326:layout_gravity无效
    1.检查一下组件的高度是不是match_parent,是的话改为wrap_content
    2.检查一下父控件是不是wrap_content
    3.如果是动态添加组件,xml中设置的居中都无效,要在代码中重新设置,代码如下
    LayoutParams pars = new LayoutParams(LayoutParams.WRAP_CONTENT,
    LayoutParams.WRAP_CONTENT);
    pars.leftMargin = 12;
    pars.gravity = Gravity.CENTER_VERTICAL;
    view.setLayoutParams(pars)
    140331:
    居中 RelativeLayout里组件写layout_gravity是无效的,要使用android:layout_centerInParent,layout_centerVertical,layout_centerHorizontal(里面的组件高度是要wrap_content,不能是match_parent), 但是RelativeLayout的gravity有效 layout_gravity只在FrameLayoutLinearLayout里有效
    140402:动态添加组件,设置layout_height无效,应该加上minHeight

     

    TextView

    android:singleLine="true"
    说明
    当不要TextView因为字数太长而换行时,可以设为true
    超长部分用...省略
    文字居中
    android:gravity="center"

    EditText

     

    EditText获取焦点软盘无效,即使设置focusable,requestFocus都无效,加上下面代码即可
    ((InputMethodManager)mContext.getSystemService(Context.INPUT_METHOD_SERVICE)).toggleSoftInput(0,InputMethodManager.HIDE_NOT_ALWAYS);

     

     

    View

     

    140417:view 的onKey函数会执行两次,一次是onKeyDown,一次是onKeyUp
    所在在onKey方法里面要进行判断
    view.setOnKeyListener(new OnKeyListener() {
                @Override
                public boolean onKey(View v, int keyCode, KeyEvent event) {
                    if(keyCode == KeyEvent.KEYCODE_BACK && event.getAction() == KeyEvent.ACTION_DOWN){
                    }else{
                          //do sth
                    }
                    return false;
                }
            });            

     

     

    Selector

    <!--140321:创建一个点击的selector-->
    <?xml version="1.0" encoding="utf-8"?>
    <selector xmlns:android="http://schemas.android.com/apk/res/android" >
        <item android:state_enabled="false" android:drawable="@drawable/bg_topbar_edit"></item>
        <item android:state_pressed="true" android:drawable="@drawable/bg_topbar_edit_pressed"></item>
    </selector>
    
    <!--使用-->
    <ImageView
       android:background="@drawable/selector.xml" 
    />
    140321:如果组件初始化没有设置onClickListener,selector是不会生效的,至少Layout这个view是不行的

    Style

    可以在styles.xml里对一些字体进行统一设置
    基类 
    <style name="myTextApprearence" parent="@android:style/TextAppearance">
           <item name="android:textColor">@android:color/black</item>
    </style>
    
    子类
    <style name="myTextApprearence.big">
           <item name="android:textSize">22sp</item>
    </style>
    
    <style name="myTextApprearence.medium">
           <item name="android:textSize">18sp</item>
    </style>
    再子类
    <style name="myTextApprearence.micro.medium">
           <item name="android:textColor">@android:color/darker_gray</item>
    </style>
    然后在TextView里面用如下方法调用
    style="@style/myTextApprearence.small"
  • 相关阅读:
    vsftpd不支持目录软链接的解决办法
    SVN添加忽略目录
    Mysql 默认编码问题
    php-fpm 信号
    基于MAVEN使用IDEA创建dubbo入门项目图文教程
    taotao商城遇到的问题
    git push后出错
    Mybatis逆向工程自动生成代码(Ubuntu18.04-idea环境)
    git add.后回退 代码丢失
    对象的共享
  • 原文地址:https://www.cnblogs.com/baron89/p/3598718.html
Copyright © 2011-2022 走看看