最近在做學生課堂評價系統,客戶說要弄個班級座位調整視圖效果,要求由用戶自設置幾排幾列,還要組與組之間輪換,座位與座位之間調換,求大神給個實現思路,可以不用代碼,感激不盡。
首先,你說的組換組沒看明白啊。怎麼個換法啊?
下面說說初始化和換座。這兩個看懂了。直接上代碼吧。希望參考吧~~
import android.app.Activity;
import android.os.Bundle;
import android.widget.EditText;
public class SeatView extends Activity{
public String[][] seat = new String[][]{};//具體什麼類型的二維數組隨意,例如實體類Student[][]
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_list_item);
EditText et_line = (EditText) findViewById(R.id.edit);
EditText et_colume = (EditText) findViewById(R.id.empty);
int line = Integer.valueOf(et_line.getText().toString());
int colume = Integer.valueOf(et_colume.getText().toString());
line = line > 0 ? line - 1 : 0;
colume = colume > 0 ? colume - 1 : 0;
for(int li = 0; li < line; li ++){
for(int col = 0; col < colume; col ++){
seat[li][col] = "我是第" + (li + 1) + "行,第" + (col + 1) + "列學生。";
}
}
changeSeat(1,2,3,4);//換座
}
/**
* 換座位
* @param 分別為第一個座位的 行數,列數;第二個座位的行數,列數。
* **/
public void changeSeat(int li1, int col1, int li2, int col2){
String student = seat[li1][col1];
seat[li1][col1] = seat[li2][col2];
seat[li2][col2] = student;
}
}