CardView卡片式佈局

CardView適用於實現卡片式佈局效果的重要控件,由appcompat-v7庫提供,實際上CardView也是一個FrameLayout,只是額外提供了圓角和陰影效果,看上去有立體的感受。通常CardView都用在ListView的item佈局中。android

使用方法很簡單1:在app的build.gradle文件裏面添加依賴庫,注意版本要一致,否則會出錯。app

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    compile 'com.android.support:appcompat-v7:25.2.0'
    compile 'com.android.support:cardview-v7:25.2.0'
    testCompile 'junit:junit:4.12'
}

2.而後就能夠直接在xml中使用CardView了,就是這麼簡單,被包含的View就會產生卡片的圓角和陰影的立體效果ide

<android.support.v7.widget.CardView
        android:id="@+id/cardView"
        app:cardCornerRadius="8dp"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_margin="10dp">
        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:padding="5dp"
            android:text="棒冰行動,公益傳播設計夏令營" />
    </android.support.v7.widget.CardView>

3.最後,在Activity中,屬性能夠動態設置,也能夠在xml裏面靜態設置佈局

public class MainActivity extends AppCompatActivity {

    private CardView cardView;

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

        cardView = (CardView)findViewById(R.id.cardView);

        cardView.setRadius(8);//設置圖片圓角的半徑大小

        cardView.setCardElevation(8);//設置陰影部分大小

        cardView.setContentPadding(5,5,5,5);//設置圖片距離陰影大小
    }
}

4.最後附上CardView的經常使用屬性,以及CardView的視覺效果gradle

app:cardBackgroundColor這是設置背景顏色 
app:cardCornerRadius這是設置圓角大小 
app:cardElevation這是設置z軸的陰影 
app:cardMaxElevation這是設置z軸的最大高度值 
app:cardUseCompatPadding是否使用CompatPadding 
app:cardPreventCornerOverlap是否使用PreventCornerOverlap 
app:contentPadding 設置內容的padding 
app:contentPaddingLeft 設置內容的左padding 
app:contentPaddingTop 設置內容的上padding 
app:contentPaddingRight 設置內容的右padding 
app:contentPaddingBottom 設置內容的底padding
 
相關文章
相關標籤/搜索