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);
	}
}

执行结果如图:

时间: 2024-10-17 15:52:20

Android CardView使用和导入出错问题的相关文章

Android pull to Refresh 导入出错?

今天在导入 PuultoResfresh 的时候老是出错. error: [2014-09-28 10:04:44 - library] Unable to resolve target 'android-16' [2014-09-28 10:04:59 - PullToRefreshListFragment] Unable to resolve target 'android-16' [2014-09-28 10:04:59 - PullToRefreshListFragment] Unabl

android studio 怎样正确导入jar

近期又開始做android,使用android studio中遇到导入jar没有反应的问题,查了下资料实践攻克了,现特地写一下博客.希望对刚刚的使用的android studio的朋友有帮助. 1.先将你的jar包导入到libs下(直接直接复制过来). 2.在build.gradle中 dependencies{}里面 写上 compile files('libs/XX你的jar包.jar'),写好像这样. dependencies { compile files('libs/qqbrowser

Android开发由eclipse转Android Studio中一些常见出错问题解决方法

1.给一个Activity添加了一个Dialog主题,结果出现了下面的问题,在eclipse却没有出错 <activity android:name=".DialogActivity" android:label="@string/title_activity_dialog" android:theme="@android:style/Theme.Dialog" > </activity> 出错信息: java.lang.

Unity 3D 文件导入出错

Unity 3D 文件导入出错 安装unity 时我选择了free版的,打开已有项目时出现如下错误提示 解决办法: 先把要导入的文件先拷贝到unity3d安装目录下对应的文件夹内,之后再返回unity3d软件,右键选择"导入".

Android studio新建activity运行出错解决方法

新建activity分以下几部: (1)在 /src/main/res/layout/ 中新建activity_second.xml (2)在 /src/main/java 中新建 SecondActivity.java ,且内容如下: public class SecondActivity extends Activity{ protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceStat

如何在Android Studio项目中导入开源库?

前两天,谷歌发布了Android Studio 1.0的正式版,也有更多的人开始迁移到Android Studio进行开发.然而,网上很多的开源库,控件等还是以前的基于Eclipse进行开发,很多人不知道怎么导入到自己的基于Android Studio项目中来,微博上也有人私信我,让我来写写,正好今天回来的比较早,就写写吧.主要介绍一下常见的一些导包的场景. 前言 --project //项目目录 | build.gradle //项目的gradle配置文件 | settings.gradle

向Android模拟器中批量导入通讯录联系人

使用adb命令向Android模拟器中批量导入通讯录联系人的方法: 使用adb提供的命令, 可以非常方便地从PC中将通讯录批量导入android模拟器中. 首先要先准备好固定格式的vcf文件, 该文件即android中的通讯录存储格式文件. 格式如下: BEGIN:VCARD VERSION:2.1 N:;Qiqi;;; FN:Qiqi TEL;HOME:7474 EMAIL;HOME:qiqi.com ADR;HOME:;;Qiqi;;;; END:VCARD BEGIN:VCARD VERS

解决Android Studio 3.0导入module依赖后unable to merge index

解决Android Studio 3.0导入module依赖后unable to merge index 项目需要使用im, 在项目里导入了腾讯im的几个module依赖, 项目无法编译, 报错unable to merge dex 网上搜索一番后发现解决方案大致分以下几种: 先clean再rebuild, 删除.gradle文件夹 clean rebuild.... 降低play-service版本, 腾讯IM demo中用的play-serivce是3.0的, 估计已经够低了 :) 依赖冲突

解决阿里云数据导入自建数据库过程中,导入出错的问题

解决阿里云数据导入自建数据库过程中,导入出错的问题 mysql配置改进:vim /etc/my/cnf [mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock secure_file_priv='' max_allowed_packet = 10M character-set-server = utf8mb4 collation-server = utf8mb4_general_ci #collation-server =