GridView控件重載並應用於課程表製作

首先重寫GridView類,禁止其滑動效果和點擊效果,以便在課程表中調用

代碼(轉載):

package com.oucjwc.ui;
 
 import android.content.Context;
 import android.util.AttributeSet;
 import android.view.MotionEvent;
 import android.widget.GridView;
 
 public class GrapeGridView extends GridView {
 	public GrapeGridView(Context context) {
 		super(context);
 		// TODO Auto-generated constructor stub
 	}
 
 	public GrapeGridView(Context context, AttributeSet attrs) {
 		super(context, attrs);
 		// TODO Auto-generated constructor stub
 	}
 
 	public GrapeGridView(Context context, AttributeSet attrs, int defStyle) {
 		super(context, attrs, defStyle);
 		// TODO Auto-generated constructor stub
 	}
 
 	// 通過重新dispatchTouchEvent方法來禁止滑動
 	@Override
 	public boolean dispatchTouchEvent(MotionEvent ev) {
 		// TODO Auto-generated method stub
 		if (ev.getAction() == MotionEvent.ACTION_MOVE) {
 			return true;// 禁止Gridview進行滑動
 		}
 		return super.dispatchTouchEvent(ev);
 
 	}
 }
 

然後在佈局中調用三次GrapeGridView以組成課程表

<?xml version="1.0" encoding="utf-8"?>
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
     android:layout_height="match_parent"
     android:background="@android:color/white"
     android:orientation="vertical" >
 
     <include
         android:layout_width="fill_parent"
         android:layout_height="46.0dip"
         layout="@layout/topbar" />
 
     <com.oucjwc.ui.GrapeGridView
         android:id="@+id/weekday"
         android:layout_width="fill_parent"
         android:layout_height="wrap_content"
         android:layout_marginLeft="30dp"
         android:numColumns="7"
         android:scrollbars="none"
         android:stretchMode="columnWidth" />
 
     <LinearLayout
         android:layout_width="fill_parent"
         android:layout_height="wrap_content"
         android:orientation="horizontal" >
 
         <com.oucjwc.ui.GrapeGridView
             android:id="@+id/gtable"
             android:layout_width="30dp"
             android:layout_height="wrap_content"
             android:numColumns="1"
             android:scrollbars="none"
             android:stretchMode="columnWidth" />
 
         <com.oucjwc.ui.GrapeGridView
             android:id="@+id/gclass"
             android:layout_width="290dp"
             android:layout_height="400dp"
             android:numColumns="7"
             android:stretchMode="columnWidth"/>
     </LinearLayout>
 
 </LinearLayout>


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章