我是一个尝试学习Java / Android编程的新手。
我在Eclipse中为Android做了一个应用程序并创建了一些按钮。 我有一个后退和一个取消按钮。
示例:
我有一个EditText,你可以用你的名字写。如果您编写了您的姓名并按下后退按钮,那么您将返回上一个活动,但如果您转到相同的活动,那么您仍将看到您在EditText中写下的名称。
但是如果你按下取消按钮,你将返回上一个活动,但是当你回来时,你的名字将是空的。我将“杀死”或“停止”活动。
这是我用于Backbutton的代码,你会用什么来取消按钮? 谢谢你。
public void onClick(View v) {
switch(v.getId()){
case R.id.buttonBack:
Intent intent = new Intent (AllActivity.this, MenuActivity.class);
startActivity(intent);
break;
答案 0 :(得分:2)
对于取消按钮,您可以使用以下方法,这将终止活动。
finish()
所以在你的代码中它看起来像这样:
public void onClick(View v) {
switch(v.getId()){
case R.id.cancel:
finish();
break;
答案 1 :(得分:1)
根据流程或应用程序流程的要求,这几乎没有什么区别。对于取消和返回,因为工作是相同的,例如,如果您打开任何对话框并提供取消按钮将关闭/关闭您的对话框相同的方式后退按钮执行此操作。虽然为了实现Activity,如果你实现关闭当前活动,你可以通过调用finish()方法完成这两个选项。由于后退按钮通常用于完成当前活动并返回。
答案 2 :(得分:1)
您可能感兴趣的另一种方法是自己清除EditText的内容。 您需要在xml文件中包含为EditText定义的ID,以便您可以以编程方式访问它。
<EditText
布局内容:
android:layout_width="fill_parent"
... 然后是id属性
android:id="@+id/edit_text_id"
>
然后在你的代码中,你将把以下内容放在你的类中(不在任何方法中):
EditText anEditText;
然后在你的onCreate()中,在布局膨胀之后(如果预先出现它将导致应用程序崩溃):
anEditText = (EditText) findViewById(R.id.edit_text_id);
名称edit_text_id不重要,但它是我们在布局文件中使用的
接下来添加onClick方法取消(在case语句之后):
//this wipes the text from the textbox
anEditText.setText("");
// add the rest of the back button code after this and your good!
祝你好运!请记住,我们曾经都是新手。如果你想成为一名优秀的android程序员,我建议你首先获得Java的强大背景。这本免费的书给了我很多帮助!