Android CardView使用和导入出错问题

Android CardView使用和导入出错问题


第一部分:导入Android CardView出错的问题。

Android CardView是Android在support.v7包里面的一个view组件,同时还有一个RecyclerView。
位置在Android的SDK包中,目录:…\android-sdk-windows\extras\android\support\v7,如图:


如果在自己的项目中使用RecyclerView,则直接将…\android-sdk-windows\extras\android\support\v7\recyclerview\libs包下的android-support-v7-recyclerview.jar复制到自己项目的libs目录下即可。
但CardView不能这样,如果仅仅像RecyclerView一样复制一个jar包,则会出现错误,无法加载CardView。
正确使用Android CardView的方法是:
(1)先将…\android-sdk-windows\extras\android\support\v7目录下的整个cardview目录作为一个Android lib库,先导入到Eclipse中,如图:


导入到Eclipse后,勾选Is Library,如图:


(2)然后再在自己的项目Add这个cardview库,如图:


第二部分,Android CardView的使用。

正确导入support.v7包中的CardView后就可以直接使用它了。Android CardView的使用和其他Android View类似,在布局文件中直接使用,card_view.xml:

<?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.CardView 
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:card_view="http://schemas.android.com/apk/res-auto"
    
    android:id="@+id/card_view"
    
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    
    card_view:cardBackgroundColor="@android:color/white"
    card_view:cardCornerRadius="15dp"
    card_view:cardElevation="20dp" >

    <TextView
        android:id="@+id/text"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_gravity="center"
        android:gravity="center" />

</android.support.v7.widget.CardView>


其中,
card_view:cardCornerRadius定义圆角大小。
card_view:cardElevation定义阴影大小。


测试的MainActivity.java :

package zhangphil.cards;

import android.app.ListActivity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.ListView;

public class MainActivity extends ListActivity {

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);

		ListView lv = this.getListView();

		String[] data = new String[50];
		for (int i = 0; i < data.length; i++) {
			data[i] = "数据" + i;
		}

		ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
				R.layout.card_view, R.id.text, data);
		lv.setAdapter(adapter);
	}
}


运行结果如图:

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

zhangphil

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值