我正在尝试从TextView字段中提取文本,如下所示:
<TextView
android:id="@+id/text_random_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:padding="@dimen/padding_medium"
android:text=""
android:textColor="#FF8800"
android:textSize="30dp"
tools:context=".ImHungry" />
我正在使用的命令在这里:
final Button button2 = (Button) findViewById(R.id.button2);
button2.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
String search = R.id.text_random_text.getText().toString();
Uri uri = Uri.parse("http://www.google.com/#q=" + search);
Intent intent = new Intent(Intent.ACTION_VIEW, uri);
startActivity(intent);
我似乎收到一条错误,指出: 无法在基本类型int
上调用getText()我是新手,所以任何帮助都将不胜感激。谢谢!
答案 0 :(得分:1)
R.id.text_random_text
只是TextView的int id。
您需要执行以下操作:
public class Blah extends Activity implements OnClickListener {
TextView tv;
@Override
public void onCreate(Bundle b) {
// blah blah
tv = (TextView) findViewById(R.id.text_random_text);
// blah blah
}
@Override
public void onClick(View v) {
if (v.getId() == yourButtonsID)
{
String search = tv.getText().toString();
// whatever you wanna do
}
}
}
答案 1 :(得分:0)
您不能getText()
来自int
类型。
您需要做的是制作TextView
变量
TextView random_text = (TextView) findViewById(R.id.text_random_text);
然后在你的onClickListener
put:
String search = random_text.getText().toString();
答案 2 :(得分:0)
您正试图从
获取字符串 R.id.text_random_text
这只是整数值。要获取 TextView 的字符串,你必须这样做
这样做。
TextView tv = (TextView) findViewById(R.id.text_random_text)
然后,
button2.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
String search = tv.getText().toString();