我已经在Java上工作了一段时间,当然还有eclipse。在我的程序中,我希望能够将android按钮的文本存储为操作符(theOperator)进行测试,以便我可以根据它执行一些代码。我使用xml将所有按钮设置为一些文本。这是一个例子:
<Button
android:id="@+id/bMultiply"
android:layout_width="65dp"
android:layout_height="65dp"
android:layout_alignParentRight="true"
android:layout_below="@+id/bSix"
//// android:text="*" ///// Right here is where the text of the button is set.
android:textSize="40dp"
android:onClick="onClick"
/>
现在这是我的主要代码:
package rechee.cool;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
public class HelloAndroidActivity extends Activity {
/** Called when the activity is first created. */
public EditText display;
double total1=0;
double total2=0;
char theOperator;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
// Associate the button variable with the xml reference
display= (EditText) findViewById(R.id.editText1);
}
String display1= display.getText().toString();
// I want to store the button text of the android button as btnText. How do I do this?
public void getOperator(String btnText){
theOperator = btnText.charAt(0);
double displayValue= Double.parseDouble(display1);
total1+=displayValue;
display.setText("");
}
public void onClick(View v) {
switch(v.getId()){
case R.id.bOne:
display.append("1");
break;
case R.id.bTwo:
display.append("2");
break;
case R.id.bThree:
display.append("3");
break;
case R.id.bFour:
display.append("4");
break;
case R.id.bFive:
display.append("5");
break;
case R.id.bSix:
display.append("6");
break;
case R.id.bSeven:
display.append("7");
break;
case R.id.bEight:
display.append("8");
break;
case R.id.bNine:
display.append("9");
break;
case R.id.bZero:
display.append("0");
break;
case R.id.bPoint:
display.append(".");
break;
case R.id.bClear:
display.setText("");
break;
case R.id.bAdd:
getOperator(display1);
//String theOperator= new String("+");
break;
case R.id.bEqual:
}
}
}
答案 0 :(得分:2)
获取按钮的文字。
在你的班级中加一个变量
public class HelloAndroidActivity extends Activity {
private String buttonText;
private Button button;
...
然后在onCreate方法中获取按钮和文本:
@Override
public void onCreate(Bundle savedInstanceState) {
button = (Button)findViewById(R.id.bMultiply);
buttonText = button.getText().toString();
}
祝你好运
答案 1 :(得分:1)
我很抱歉,但你的措辞有点好笑。您是否正在寻找获取按钮文本的方法,因为您只需使用button.getText()
即可。不确定这是不是您要找的,请告诉我。