我有一個14行的表格佈局,每行有2個EditText字段。我有用戶點擊的按鈕,程序計算並打印答案。問題是,只要用戶點擊按鈕,最後一個EditText字段中輸入的字符消失,但當用戶點擊它時,它會消失。請幫我解決這個問題。這是xml文件。EditText中的文本消失
<TableRow
android:id="@+id/tableRow2"
android:layout_width="fill_parent"
android:layout_height="50dp">
<TextView
android:textSize="20sp"
android:typeface="sans"
android:textStyle="bold"
android:gravity="center"
android:id="@+id/sub1"
android:padding="10dp"
android:layout_width="120dp"
android:layout_height="wrap_content"
android:text="@string/sub1" />
<EditText
android:gravity="center"
android:id="@+id/subject1"
android:padding="10dp"
android:layout_width="120dp"
android:layout_height="wrap_content"
android:inputType="text" >
<requestFocus />
</EditText>
<EditText
android:gravity="center"
android:id="@+id/credits1"
android:padding="10dp"
android:layout_width="120dp"
android:layout_height="wrap_content"
android:inputType="phone" >
<requestFocus />
</EditText>
</TableRow>
這裏是點擊代碼
public void onClick(View arg0) {
// TODO Auto-generated method stub
tv.setText("");
num=0;
den=0;
f=0;
if(dept.equalsIgnoreCase("cse")||dept.equalsIgnoreCase("mechtronics")||dept.equalsIgnoreCase("genetics")) {
for(int i=0;i<12;i++) {
s[i]=sub[i].getText().toString();
g[i]=SetGP.setGP(s[i]);
c[i]=Float.parseFloat(cre[i].getText().toString());
if((g[i]==-1)&&((c[i]>=1)&&(c[i]<=4))) {
j=String.valueOf(i+1);
Toast.makeText(Gpa.this, "Please Enter Valid Grade For Subject "+j, Toast.LENGTH_LONG).show();
f=1;
break;
}
else if((g[i]!=-1)&&((c[i]<1)||(c[i]>4))) {
j=String.valueOf(i+1);
Toast.makeText(Gpa.this, "Please Enter Valid Credits For Subject "+j, Toast.LENGTH_LONG).show();
f=1;
break;
}
else if((g[i]==-1)&&((c[i]<1)||(c[i]>4))) {
j=String.valueOf(i+1);
Toast.makeText(Gpa.this, "Please Enter Valid Grade and Credits For Subject "+j, Toast.LENGTH_LONG).show();
f=1;
break;
}
}
for(i=0;i<12;i++) {
num = CalcGPA.calcnum(g[i], c[i], num);
den = CalcGPA.calcden(c[i], den);
}
}
顯示您的按鈕點擊事件代碼。 – Piyush
@PiyushGupta現在看帖子.. – Aadi