• Android CardView使用和导入出错问题


    Android CardView使用和导入出错问题


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

    Android CardView是Android在support.v7包里面的一个view组件,同一时候另一个RecyclerView。


    位置在Android的SDK包中,文件夹:…android-sdk-windowsextrasandroidsupportv7,如图:


    假设在自己的项目中使用RecyclerView,则直接将…android-sdk-windowsextrasandroidsupportv7 ecyclerviewlibs包下的android-support-v7-recyclerview.jar拷贝到自己项目的libs文件夹下就可以。
    但CardView不能这样。假设只像RecyclerView一样复制一个jar包,则会出现错误,无法载入CardView。
    正确使用Android CardView的方法是:
    (1)先将…android-sdk-windowsextrasandroidsupportv7文件夹下的整个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);
    	}
    }
    


    执行结果如图:

  • 相关阅读:
    Aviator
    Docker是什么
    vulnhub--SickOs1.1
    vulnhub--HackInOS
    本地浏览器远程访问服务器tensorboard(MobaXterm)
    dogecoin
    python多进程
    gpu
    python调用父类(超类)
    linux更改终端显示颜色(用户名颜色等)
  • 原文地址:https://www.cnblogs.com/slgkaifa/p/6928244.html
Copyright © 2020-2023  润新知