Java I';我对一个显示器的问题提出了一个非常不切实际的询问
导入android.widget.EditText; 导入android.widget.TextViewJava I';我对一个显示器的问题提出了一个非常不切实际的询问,java,android,eclipse,Java,Android,Eclipse,导入android.widget.EditText; 导入android.widget.TextView package walmart.namespace; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.widget.Button; 无论我做什么,输出中都没有显示任何内容。我对JAVA非常、非常陌生,所以我似乎不知道为什么我的显示器上什么都
package walmart.namespace;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
无论我做什么,输出中都没有显示任何内容。我对JAVA非常、非常陌生,所以我似乎不知道为什么我的显示器上什么都没有显示
将我的代码编辑为我当前拥有的代码。仍然不起作用 查看该代码,问题可能在于如何初始化名称和搜索 更改您的代码:
public class WalmartActivity extends Activity {
/** Called when the activity is first created. */
EditText name;
Button search;
TextView display;
@Override
public void onCreate(Bundle savedInstanceState) {
setContentView(R.layout.main);
super.onCreate(savedInstanceState);
name = (EditText)findViewById(R.id.etName);
search = (Button) findViewById(R.id.btnSearch);
display = (TextView) findViewById(R.id.tvdisplay);
name.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
name.setText("");
}
});
search.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
if (name.equals("Electronics")) {
display.setText ('5');
} else if (name.equals("candy")) {
display.setText ('1');
} else if (name.equals("Tobacco")) {
display.setText ("1");
}
}});
};}
为此:
name = (EditText) findViewById(getResources().getIdentifier("etName", "id", getPackageName()));
search = (Button) findViewById(getResources().getIdentifier("btnSearch", "id", getPackageName()));
另外,添加一个文本视图,将您的答案显示到main.xml
文件中,给它一个id(比如说display)android:id=“@+id/display”
,然后将其添加到您的活动中,以便您可以更改它:
name = (EditText) findViewById(R.id.etName);
search = (Button) findViewById(R.id.btnSearch);
然后您可以通过调用以下命令进行更新:
display = (TextView) findViewById(R.id.display);
因此,文件的开头应该如下所示:
display.setText('some text');
下一步从以下位置更新您的if
语句:
public class WalmartActivity extends Activity {
/** Called when the activity is first created. */
EditText name;
Button search;
TextView display;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
name = (EditText) findViewById(R.id.etName);
search = (Button) findViewById(R.id.btnSearch);
display = (TextView) findViewById(R.id.display);
....
致:
下面是一段代码示例:
Demo2Activity.java
if (name.getText().toString().equals("Electronics")) {
display.setText("something");
}
main2.xml
package com.demo1;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
public class Demo2Activity extends Activity {
private Button button;
private EditText editText;
private TextView textView;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main2);
button = (Button) findViewById(R.id.button);
editText = (EditText) findViewById(R.id.editText);
textView = (TextView) findViewById(R.id.textText);
button.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
if (editText.getText().toString().equals("Electronics")) {
textView.setText("found");
}
}
});
}
}
我只能看到你一半的代码。你能把整件事都贴出来吗?另外,你能更具体地说明你的代码应该做什么吗。哦,下次你应该自己做,因为这是你问题的一个关键标签。我可以把整件事都贴出来,但实际上只是一大堆if-then语句,而且相当长。但对于asnwer您来说,它应该将输入的名称转换为显示器中的数字输出。[文本中的命名显示]您的活动是用按钮创建的,但您的onclick侦听器不工作?我想是这样的。我不确定到底是什么问题,但我在编辑文本中输入了一个短语,而我得到的只是显示框中的一个字。遗憾的是,我仍然没有这样做/关于我在你问题中的评论,你在更新什么?如果显示内容是您希望在屏幕上显示的内容,那么从我上面看到的内容来看,我不会更新我的if thens上的格式。我不确定是否还有其他我应该做的事情,但如果有,请告诉我。这就是我的代码的基本外观。请参阅我的主要文章,了解我目前拥有的内容。然后,当我这样做时,我会将“不兼容的操作数类型可编辑和字符串”作为错误。
package com.demo1;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
public class Demo2Activity extends Activity {
private Button button;
private EditText editText;
private TextView textView;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main2);
button = (Button) findViewById(R.id.button);
editText = (EditText) findViewById(R.id.editText);
textView = (TextView) findViewById(R.id.textText);
button.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
if (editText.getText().toString().equals("Electronics")) {
textView.setText("found");
}
}
});
}
}
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="main2.xml"
android:id="@+id/textText" />
<EditText
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:id="@+id/editText"/>
<Button
android:id="@+id/button"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="button" />
</LinearLayout>