60 likes | 168 Views
如何運用表格佈局 (Table Layout). 九宮格程式範例. 建立九宮格排列方式 運用 表格佈局 (Table Layout ) 當 畫面上的一群 view 排成一個矩陣或表格形式時,就能採用 TableLayout 來敘述其佈局方式 。 例如 ,有如下的表格資料 :而且 想將之顯示於畫面上,就可以安排一群 view ,整齊排列如下:. 程式範例說明. 建立表格佈局 TableLayout layout = new TableLayout (this ); 設定目前的 View 為表格佈局 setContentView (layout);.
E N D
九宮格程式範例 • 建立九宮格排列方式 • 運用表格佈局(Table Layout) • 當畫面上的一群view排成一個矩陣或表格形式時,就能採用TableLayout來敘述其佈局方式。 • 例如,有如下的表格資料:而且想將之顯示於畫面上,就可以安排一群view,整齊排列如下:
程式範例說明 • 建立表格佈局 TableLayout layout = new TableLayout (this); • 設定目前的View為表格佈局 setContentView(layout); • 建立按鈕陣列 • //建立一個3x3的按鈕陣列 for (int f=0; f<=2; f++) { TableRowtr = new TableRow(this); for (int c=0; c<=2; c++) { NButton b = new NButton (this); b.setText(""+f+c); b.setTextSize(10.0f); b.setTextColor(Color.RED); b.setOnClickListener(this); tr.addView(b, 105,105); } // for (int f=0; f<=2; f++) layout.addView(tr); } // for for (int c=0; c<=2; c++)
按鈕事件處理 • 指定點選事件處理 • 如果沒有個別指定事件處理函數,則通通送往主程式的onClick()事件處理 • public class dic_tut3 extends Activity implements View.OnClickListener • 主程式的事件處理 • 要先分辨是由那一個事件送來的 public void onClick(View view) { //強制轉型為Button Button btn = (Button) view; String text = “*“; btn.setText(text); }
增加按鈕的活用度 • 問題: • 程式只能被動反應資訊, • 按鈕本身無法確切得知自己的位置, • 也無法與其他按鈕互動 • 解決方法:建立一個新的按鈕 • 繼承原有按鈕的功能 • 增加新的特性 import android.content.Context; class Nbutton extends Button { //建立新特性 inti,j; //座標 intcounter; //按下次數 //繼承原有Button的功能 public Nbutton(Context context) { super(context); } }
新的事件處理函式 public void onClick (View view) { NButtonbtn = (NButton) view; //強制轉型為Button btn.counter++; //次數+1 //顯示按下的資訊 String text = ""+btn.counter; btn.setText(text); }