2011-02-14 54 views
0
public EditText text; 
public TextView text1; 
@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 

} 
     public void act(View v) { 
      text = (EditText) findViewById(R.id.widget30); 
      text1 = (TextView) findViewById(R.id.textView1); 
      text1.setText(text.getText()); 


     } 

這個代碼XML行動的ImageButton的

 <EditText 
android:id="@+id/widget30" 
android:layout_width="260px" 
android:layout_height="50px" 
android:text="Gouvernorat" 
android:textSize="18sp" 
android:layout_x="31px" 
android:layout_y="90px" 
></EditText><ImageButton 
android:layout_width="wrap_content" 
android:src="@drawable/icon1" 
android:id="@+id/imageButton1" 
android:layout_height="wrap_content" 
android:layout_x="108dip" 
android:layout_y="360dip"> 
android:onClick="act" 
</ImageButton><TextView 
android:layout_height="wrap_content" 
android:layout_width="wrap_content" 
android:id="@+id/textView1" 
android:text="TextView" 
android:layout_x="196dip" 
android:layout_y="382dip"> 
</TextView> 

如何能在TextView中的EditText的內容i現場?

謝謝

回答

1

不知道這是否是直接從源代碼複製,但在你的XML一個錯字。 onClick屬性超出了ImageButton標記。

除此之外,你需要調用toString你得到了什麼,從EditText.getText回來。 gettext的方法返回類型的對象可編輯的,而不是底層字符串

試試這個爲你的行爲方式

public void act(View v) { 
     text = (EditText) findViewById(R.id.widget30); 
     text1 = (TextView) findViewById(R.id.textView1); 
     text1.setText(text.getText().toString()); 
2

你的代碼看起來incompelete:

所以我寫一個示例代碼塊瞭解整個邏輯:

private ImageButton button; 
    private EditText et; 
    private TextView tv; 

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

     button = (ImageButton) findViewById(R.id.id_of_image_button); // your image button 
     et = (EditText) findViewById(R.id.id_of_edit_text); // your edit text field 
     tv = (TextView) findViewById(R.id.id_of_text_view); // your text view 

     // click event on your button 
     button.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       // Do something with the value of the button 
       // sets the value of the edit text field to the text view 
       tv.setText(et.getText().toSting()); 
      } 
     }); 
    } 

此外,你應該以正確的方式編寫你的XML佈局文件。