王梦然

列举至少3种Support包中提供的布局或工具

android.support.v7.widget.CardView

继承自FrameLayout并实现了圆角和阴影效果,常用于ListView或RecyclerView中Item布局的根节点 
示例代码:

<android.support.v7.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:android.support.v7.cardview="http://schemas.android.com/apk/res-auto"
    android:id="@+id/item_cardView"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:clickable="true"
    android:elevation="4dp"
    android:foreground="?android:attr/selectableItemBackground"
    android.support.v7.cardview:cardBackgroundColor="#999"
    android.support.v7.cardview:cardCornerRadius="15dp"
    android.support.v7.cardview:cardElevation="15dp"
    android.support.v7.cardview:contentPadding="0dp">
 
    <TextView
        android:id="@+id/item_textView"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:padding="16dp"
        android:text="@string/hello" />
</android.support.v7.widget.CardView>

 

com.android.support:recyclerview-v7包

recyclerview

高度解耦 , 异常灵活 , 可以用来代替ListView / GridView

相关类介绍: 
这里写图片描述

使用步骤: 
1.导包 
2.在布局文件中添加RecyclerView 
3.在Java代码中实现RecyclerView, 至少要添加两个属性: 
recyclerView.setLayoutManager(new LinearLayoutManager(this));//指定布局管理器 
recyclerView.setAdapter(adapter); //指定Adapter 
4.Adapter的写法 
1)创建一个自定义的ViewHolder,在里面初始化Item的每一个控件 
2)让自定义的Adapt而继承RecyclerView.Adapter<传入自定义的ViewHolder> 
3)实现对应的方法

    <android.support.v7.widget.RecyclerView
        android:id="@+id/app_taskview_recyclerview"
        android:layout_width="wrap_content"
        android:layout_height="475dip"/>
public class RecyclerAdapter extends RecyclerView.Adapter<RecyclerAdapter.ViewHolder> {
    private Context context;
    private ArrayList<String> list;
 
    public RecyclerAdapter(ArrayList<String> list, Context context) {
        this.list = list;
        this.context = context;
    }
 
    @Override
    public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
        View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.recycler_item,
                parent, false);
        ViewHolder holder = new ViewHolder(view);
        return holder;
    }
 
    @Override
    public void onBindViewHolder(ViewHolder holder, int position) {
        String s = list.get(position);
        holder.item_textView.setText(s);
    }
 
    @Override
    public int getItemCount() {
        return list.size();
    }
 
    public static class ViewHolder extends RecyclerView.ViewHolder {
        private final TextView item_textView;
 
        public ViewHolder(View itemView) {
            super(itemView);
            item_textView = (TextView) itemView.findViewById(R.id.item_textView);
        }
    }
}

com.android.support:design包-

FloatingActionButton

漂浮的Button,该控件父类为ImageView,所以拥有ImageView的所有属性

效果: 
这里写图片描述

常用属性 
android.support.design:fabSize=” ” 指定图标的大小 值:normal / mini 
android.support.design:elevation=”” 指定阴影的深度 int 
app:layout_anchor=” ” 指定显示坐标的锚点 
app:layout_anchorGravity=” ” 指定锚点的对齐方式

<android.support.design.widget.FloatingActionButton
        android:id="@+id/fab"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@mipmap/ic_launcher"
        app:elevation = "10dp"
        android:layout_alignParentBottom="true">
</android.support.design.widget.FloatingActionButton>

app包名为

xmlns:app="http://schemas.android.com/apk/res-auto"

 

posted on 2018-07-18 14:07  快乐的铲屎官  阅读(174)  评论(0编辑  收藏  举报

导航