如何在不使用id的情况下操纵按钮的内容; Android的?

时间:2015-03-20 02:48:00

标签: android xml button onclick

我是android世界的新手,我有一个问题,好吧,我正在制作一个非常简单的项目,这是一个我有一个按钮和一个EditText的活动。该按钮在XML中有一个事件onClick。 我的问题是:我需要按钮值并将此值发送给 EditText但我的按钮没有id。帮助我,如果没有id,我不知道如何操纵元素。

XML代码:

 <View 
             android:layout_height="@dimen/cell_height"
             android:background="@color/red"/>
         <Button 
             android:layout_marginLeft="@dimen/button_margin"
             android:layout_gravity="center_vertical"
             android:text="@string/hex_red"
             android:textColor="@color/red"
             android:onClick="copy"/>`

Java代码:

public void copy(View boton){

    EditText txtSelected = (EditText)this.findViewById(R.id.txtColor)

    String color =  boton; <-- here need the button value

    txtSelected.setText(color);
}

我需要你的帮助,谢谢

3 个答案:

答案 0 :(得分:1)

你可以说boton.getText()。toString()

答案 1 :(得分:1)

修改您的copy()功能,如下所示:

public void copy(View boton) {
  EditText txtSelected = (EditText)this.findViewById(R.id.txtColor)

  Button btn = (Button) boton;  // << key point.
  String color = btn.getText().toString();

  txtSelected.setText(color);
}`

答案 2 :(得分:0)

public void onClickBtn(View view) {

EditText txtSelected = (EditText)this.findViewById(R.id.txtColor)


Button btn = (Button)(view);
String value = (String) btn.getText();
txtSelected.setText(value);
txtSelected.setSelection(value.length()); // cursor will be at the end of the text

}