私のアプリケーションでは、2 つの線形レイアウトを動的に生成し、それらを ScrollView に追加しています。
各 LinearLayout には Button と Edit Text があります。2 番目の LinearLayout の Button がクリックされると、1 番目の Linearlayout が無効になります。
コード:
package com.integrated.mpr;
import android.app.Activity;
import android.app.Dialog;
import android.app.ProgressDialog;
import android.content.Context;
import android.content.Intent;
import android.graphics.Color;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup.LayoutParams;
import android.widget.Button;
import android.widget.EditText;
import android.widget.LinearLayout;
import android.widget.ScrollView;
import android.widget.TextView;
public class Page1 extends Activity implements OnClickListener{
int i;
int[][] id = new int[pos][3];
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
int p =0;
Log.d("value of ", ""+pos);
for(int i =0;i<2;i++){
for(int j =0;j<3;j++){
id[i][j] = p;
p++;
}
}
//In each row 1st column is the id for button
//2nd column id for edittext
//3rd column id for Linearlayout
ScrollView sv = new ScrollView(this);
LinearLayout ll = new LinearLayout(this);
ll.setOrientation(LinearLayout.VERTICAL);
for(i=0;i<2;i++){
LinearLayout llay = new LinearLayout(this);
llay.setOrientation(LinearLayout.VERTICAL);
llay.setId(id[i][2]);
EditText et = new EditText(this);
et.setId(id[i][1]);
Button stop = new Button(this);
stop.setText("Submit");
stop.setId(id[i][0]);
stop.setOnClickListener(this);
llay.addView(et);
llay.addView(stop);
ll.addView(llay);
}
sv.addView(ll);
this.setContentView(sv);
}
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
if(v.getId()==id[1][0]){
//when te second Button is clicked
// now here disable the 1st linear layout
//Can't think how to do it
}
}
}