2013-10-16 55 views
0

我根據輸入計數做了一個小的編碼,它會顯示覆選框和單選按鈕的數量。在這裏,一切都很好。但我堅持編輯文本。如果我爲第一個編輯文本輸入任何值並單擊該按鈕,關注值將顯示在左上角。我需要它像顯示覆選框一樣顯示下面的單選按鈕。非常感謝您的幫助。提前致謝。在Android中編輯文本線性佈局時無法解決這個問題

這是我的代碼。

XML佈局:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    tools:context=".MainActivity" > 

    <LinearLayout 
     android:id="@+id/linearLayout" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:orientation="vertical" > 
    </LinearLayout> 

    <EditText 
     android:id="@+id/button1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignLeft="@+id/textView1" 
     android:layout_below="@+id/textView1" 
     android:layout_marginLeft="12dp" 
     android:layout_marginTop="05dp" 
     android:hint="Enter no" /> 

    <Button 
     android:id="@+id/button2" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignBaseline="@+id/button1" 
     android:layout_alignBottom="@+id/button1" 
     android:layout_alignParentRight="true" 
     android:layout_marginRight="05dp" 
     android:text="Edit Text" /> 

    <EditText 
     android:id="@+id/button3" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignRight="@+id/button1" 
     android:layout_below="@+id/button1" 
     android:layout_marginTop="0dp" 
     android:hint="Enter no" /> 

    <Button 
     android:id="@+id/button4" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignBaseline="@+id/button3" 
     android:layout_alignBottom="@+id/button3" 
     android:layout_alignRight="@+id/button2" 
     android:text="Check Box" /> 

    <RadioGroup 
     android:id="@+id/radiogroup" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_centerHorizontal="true" 
     android:layout_centerVertical="true" 
     android:orientation="vertical" /> 

    <Button 
     android:id="@+id/button5" 
     android:layout_width="98dp" 
     android:layout_height="wrap_content" 
     android:layout_alignLeft="@+id/button4" 
     android:layout_alignRight="@+id/button2" 
     android:layout_below="@+id/button3" 
     android:text="Radio Button" /> 

</RelativeLayout> 

的Java MainActivity:

import android.os.Bundle; 
import android.app.Activity; 
import android.view.View; 
import android.view.View.OnClickListener; 
import android.view.ViewGroup; 
import android.widget.*; 
import android.widget.LinearLayout.*; 

public class MainActivity extends Activity { 
    private LinearLayout mLayout; 
    private EditText mEditText; 
    private Button mButton; 
    Button abutton; 


    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 

     mLayout = (LinearLayout) findViewById(R.id.linearLayout); 
     mEditText = (EditText) findViewById(R.id.button1); 
     mButton = (Button) findViewById(R.id.button2); 
     mButton.setOnClickListener(onClick()); 
     TextView textView = new TextView(this); 
     textView.setText("New text"); 


     final EditText button2=(EditText)findViewById(R.id.button3); 

     findViewById(R.id.button5).setOnClickListener(new View.OnClickListener() { 

      @Override 
      public void onClick(View v) { 
       // TODO Auto-generated method stub 


       int number=Integer.parseInt(button2.getText().toString()); 
       addRadioButtons(number); 
      } 
     }); 

     findViewById(R.id.button4).setOnClickListener(new View.OnClickListener() { 

      @Override 
      public void onClick(View v) { 
       // TODO Auto-generated method stub 


       int number=Integer.parseInt(button2.getText().toString()); 
       addCheckBox(number); 
      } 
     }); 
    } 
    public void addRadioButtons(int number) { 

     for (int row = 0; row < 1; row++) { 
      LinearLayout ll = new LinearLayout(this); 
      ll.setOrientation(LinearLayout.HORIZONTAL); 

      for (int i = 1; i <= number; i++) { 
       RadioButton rdbtn = new RadioButton(this); 
       rdbtn.setId((row * 2) + i); 
       rdbtn.setText("Radio " + rdbtn.getId()); 
       ll.addView(rdbtn); 
      } 
      ((ViewGroup) findViewById(R.id.radiogroup)).addView(ll); 
     } 

    } 

    public void addCheckBox(int number) { 

     for (int row = 0; row < 1; row++) { 
      LinearLayout ll = new LinearLayout(this); 
      ll.setOrientation(LinearLayout.HORIZONTAL); 

      for (int i = 1; i <= number; i++) { 
       CheckBox ch = new CheckBox(this); 
       ch.setId((row * 2) + i); 
       ch.setText("Check " + ch.getId()); 
       ll.addView(ch); 
      } 
      ((ViewGroup) findViewById(R.id.radiogroup)).addView(ll); 
     } 

    } 

    private OnClickListener onClick() { 
     return new OnClickListener() { 

      @Override 
      public void onClick(View v) { 
       mLayout.addView(createNewTextView(mEditText.getText().toString())); 
      } 
     }; 
    } 

    private TextView createNewTextView(String text) { 
     final LayoutParams lparams = new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT); 
     final TextView textView = new TextView(this); 
     textView.setLayoutParams(lparams); 
     textView.setText("" + text); 
     return textView; 
    } 


} 
+0

'我需要它像下面的複選框顯示和單選按鈕displayed' ...下面的你想顯示什麼這些TextViews?在RadioButton按鈕下面? – gunar

+0

@gunar:第一個文本視圖,然後複選框,然後單選按鈕。截至目前,它只顯示覆選框和單選按鈕。 –

回答

2

使你的XML佈局這樣的變化

<EditText 
     android:id="@+id/button3" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentLeft="true" 
     android:layout_below="@+id/linearLayout" 
     android:hint="Enter no" /> 

    <Button 
     android:id="@+id/button4" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignBaseline="@+id/button3" 
     android:layout_alignParentRight="true" 
     android:text="Check Box" /> 

    <RadioGroup 
     android:id="@+id/radiogroup" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_centerHorizontal="true" 
     android:layout_centerVertical="true" 
     android:orientation="vertical" /> 

    <Button 
     android:id="@+id/button5" 
     android:layout_width="98dp" 
     android:layout_height="wrap_content" 
     android:layout_alignLeft="@+id/button4" 
     android:layout_alignRight="@+id/button2" 
     android:layout_below="@+id/button3" 
     android:text="Radio Button" /> 

</RelativeLayout> 

<EditText 
     android:id="@+id/button3" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentLeft="true" 
     android:layout_below="@+id/linearLayout" 
     android:hint="Enter no" /> 

    <Button 
     android:id="@+id/button4" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignBaseline="@+id/button3" 
     android:layout_alignParentRight="true" 
     android:text="Check Box" /> 

    <RadioGroup 
     android:id="@+id/radiogroup" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_centerHorizontal="true" 
     android:layout_centerVertical="true" 
     android:orientation="vertical" /> 

    <Button 
     android:id="@+id/button5" 
     android:layout_width="98dp" 
     android:layout_height="wrap_content" 
     android:layout_alignLeft="@+id/button4" 
     android:layout_alignRight="@+id/button2" 
     android:layout_below="@+id/button3" 
     android:text="Radio Button" /> 

</RelativeLayout> 
+1

謝謝you..it作品! –

0
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    tools:context=".MainActivity" > 

    <EditText 
     android:id="@+id/button1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentTop="true" 
     android:layout_marginLeft="12dp" 
     android:layout_marginTop="05dp" 
     android:hint="Enter no" /> 

    <Button 
     android:id="@+id/button2" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignBaseline="@+id/button1" 
     android:layout_alignBottom="@+id/button1" 
     android:layout_alignParentRight="true" 
     android:layout_marginRight="05dp" 
     android:text="Edit Text" /> 

    <TextView 
     android:id="@+id/textviewbutton2" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentRight="true" 
     android:layout_below="@+id/button1" 
     android:layout_marginRight="05dp" 
     android:layout_marginTop="5dp" 
     android:text="Edit Text" /> 

    <LinearLayout 
     android:id="@+id/linearLayout" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_below="@+id/textviewbutton2" 
     android:gravity="right" 
     android:orientation="vertical" 
     android:padding="10dp" > 
    </LinearLayout> 

    <EditText 
     android:id="@+id/button3" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentLeft="true" 
     android:layout_below="@+id/linearLayout" 
     android:hint="Enter no" /> 

    <Button 
     android:id="@+id/button4" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignBaseline="@+id/button3" 
     android:layout_alignParentRight="true" 
     android:text="Check Box" /> 

    <Button 
     android:id="@+id/button5" 
     android:layout_width="98dp" 
     android:layout_height="wrap_content" 
     android:layout_alignLeft="@+id/button4" 
     android:layout_alignRight="@+id/button2" 
     android:layout_below="@+id/button3" 
     android:text="Radio Button" /> 

    <LinearLayout 
     android:id="@+id/radiogroup1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_below="@+id/button5" 
     android:layout_centerHorizontal="true" 
     android:layout_centerVertical="true" 
     android:orientation="horizontal" > 

     <RadioButton 
      android:id="@+id/radio0" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:checked="true" 
      android:paddingLeft="35dp" 
      android:text="Auto Pilot" 
      android:textColor="#333333" /> 

     <RadioButton 
      android:id="@+id/radio1" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:checked="true" 
      android:paddingLeft="35dp" 
      android:text="Auto Pilot" 
      android:textColor="#333333" /> 
    </LinearLayout> 

    <LinearLayout 
     android:id="@+id/radiogroup2" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_below="@+id/radiogroup1" 
     android:layout_centerHorizontal="true" 
     android:layout_centerVertical="true" 
     android:orientation="horizontal" > 

     <RadioButton 
      android:id="@+id/radio0" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:checked="true" 
      android:paddingLeft="35dp" 
      android:text="Auto Pilot" 
      android:textColor="#333333" /> 

     <RadioButton 
      android:id="@+id/radio1" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:checked="true" 
      android:paddingLeft="35dp" 
      android:text="Auto Pilot" 
      android:textColor="#333333" /> 
    </LinearLayout> 
    <LinearLayout 
     android:id="@+id/radiogroup" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_below="@+id/radiogroup2" 
     android:layout_centerHorizontal="true" 
     android:layout_centerVertical="true" 
     android:orientation="horizontal" > 

     <CheckBox 
      android:id="@+id/radio0" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:checked="true" 
      android:paddingLeft="35dp" 
      android:text="Auto Pilot" 
      android:textColor="#333333" /> 

     <CheckBox 
      android:id="@+id/radio1" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:checked="true" 
      android:paddingLeft="35dp" 
      android:text="Auto Pilot" 
      android:textColor="#333333" /> 
    </LinearLayout> 

</RelativeLayout> 
+0

不能得到您的答案..可以請您簡單介紹一下嗎? –

+0

你想要做什麼與編輯文本 –

+0

你可以請給我一個屏幕截圖,你想使 –

0

更改您全面佈局,以這樣的:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    tools:context=".MainActivity" > 

    <EditText 
     android:id="@+id/button1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentTop="true" 
     android:layout_marginLeft="12dp" 
     android:layout_marginTop="05dp" 
     android:hint="Enter no" /> 

    <Button 
     android:id="@+id/button2" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignBaseline="@+id/button1" 
     android:layout_alignBottom="@+id/button1" 
     android:layout_alignParentRight="true" 
     android:layout_marginRight="05dp" 
     android:text="Edit Text" /> 

    <Button 
     android:id="@+id/button4" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentRight="true" 
     android:layout_below="@+id/button2" 
     android:text="Check Box" /> 

    <Button 
     android:id="@+id/button5" 
     android:layout_width="98dp" 
     android:layout_height="wrap_content" 
     android:layout_alignParentRight="true" 
     android:layout_below="@+id/button4" 
     android:text="Radio Button" /> 


    <EditText 
     android:id="@+id/button3" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignBaseline="@+id/button4" 
     android:layout_alignParentLeft="true" 
     android:hint="Enter no" /> 


    <LinearLayout 
     android:id="@+id/linearLayout" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_below="@+id/button5" 
     android:gravity="left" 
     android:orientation="vertical" /> 

    <RadioGroup 
     android:id="@+id/radiogroup" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_below="@+id/linearLayout" 
     android:layout_centerHorizontal="true" 
     android:orientation="vertical" /> 

</RelativeLayout> 

沒有Java代碼更改,但如果在第二個編輯文本中沒有輸入任何內容或無效內容並且用戶正在按第二個按鈕,則會得到NumberFormatException

+0

看到這個截圖http://www.mediafire.com/view/m6l4q71av9x43h7我需要編輯文本應該顯示上面的check1檢查2檢查3 .. –

+0

更新了你需要的佈局...檢查出來 – gunar

+0

@DineshKumar :你是否設法解決你的問題? – gunar