您的位置:首页 > 移动开发 > Android开发

Android CardView的基本使用

2015-11-30 00:49 513 查看
效果图:

设置显示条目的圆角

设置显示条目的背景阴影

设置显示条目的显示高度



条目布局:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:card_view="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#50211403"
android:orientation="vertical"
tools:context=".MainActivity">
<!--card_view:cardElevation 阴影的大小
card_view:cardMaxElevation 阴影最大高度
card_view:cardBackgroundColor 卡片的背景色
card_view:cardCornerRadius 卡片的圆角大小
card_view:contentPadding 卡片内容于边距的间隔-->
<android.support.v7.widget.CardView
android:layout_width="match_parent"
android:layout_height="match_parent"
card_view:cardBackgroundColor="#F0F4CD"
card_view:cardCornerRadius="10dp"
card_view:cardPreventCornerOverlap="true"
card_view:cardUseCompatPadding="true"
card_view:contentPadding="10dp"
card_view:cardElevation ="10dp"
>

<TextView
android:id="@+id/info_text_one"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:text="CardView1测试"
android:textSize="16sp" />
</android.support.v7.widget.CardView>

</LinearLayout>


主页面布局 activity_layout.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#50211403"
android:orientation="vertical"

tools:context=".MainActivity">
<android.support.v7.widget.RecyclerView
android:id="@+id/list"
android:scrollbars="vertical"
android:layout_gravity="center"
android:layout_width="match_parent"
android:layout_height="match_parent"
/>

</LinearLayout>


java代码的实现:

public class MainActivity extends AppCompatActivity {
private RecyclerView mRecyclerView;

private MyAdapter myAdapter;

@Override
protected void onCreate( Bundle savedInstanceState )
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

//        getActionBar().setTitle("那些年我们追的星女郎");

// 拿到RecyclerView
mRecyclerView = (RecyclerView) findViewById(R.id.list);
// 设置LinearLayoutManager
mRecyclerView.setLayoutManager(new LinearLayoutManager(this));
// 设置ItemAnimatorw
AnimatorSet animatorSet = new AnimatorSet();
mRecyclerView.setItemAnimator(new DefaultItemAnimator());
// 设置固定大小
mRecyclerView.setHasFixedSize(true);
// 初始化自定义的适配器
myAdapter = new MyAdapter(this);
// 为mRecyclerView设置适配器
mRecyclerView.setAdapter(myAdapter);

}

}
class MyAdapter extends RecyclerView.Adapter<MyAdapter.MyViewHolder>{

private Context mContext;
public MyAdapter(Context mContext){
this.mContext = mContext;
}
@Override
public MyViewHolder onCreateViewHolder(ViewGroup viewGroup, int i) {
View view = View.inflate(mContext, R.layout.item, null);
//设置条目的布局方式
LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT);
view.setLayoutParams(lp);
MyViewHolder myViewHolder = new MyViewHolder(view);

return myViewHolder;
}

@Override
public void onBindViewHolder(MyViewHolder viewHolder, int i) {

viewHolder.tv.setText("text " + i);
}

@Override
public int getItemCount() {
return 20;
}

class MyViewHolder extends RecyclerView.ViewHolder
{

TextView tv;
public MyViewHolder(View view)
{
super(view);

tv = (TextView) view.findViewById(R.id.info_text_one);

}
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: