Android details-disabled return key, android details

Source: Internet
Author: User

Android details-disabled return key, android details
In today's project, you need to use the return key in your own actionBar. The method used is the method of My Father activity recorded last time.

Android. support. PARENT_ACTIVITY

For more information, see: http://blog.csdn.net/yiding_he/article/details/38410151

(Menu in android details: invalidateOptionsMenu)

The problem today is to disable the system's return key. to disable the home Key, permission is required, and the user experience is insufficient. So in the project, we can disable the system return key to prevent sudden user interruption.

The statement is as follows:

public boolean onKeyDown(int keyCode, KeyEvent event) {if (keyCode == KeyEvent.KEYCODE_BACK) {return true;}return false;}

The onKeyDown method of the rewrite system. You can also disable other keys, either by using switch or if.



How can I block the Android system's return buttons?

Method 1: public boolean onKeyDown (int keyCode, KeyEvent event) {// TODOAuto-generated method stubif (keyCode = KeyEvent. KEYCODE_BACK) {morePopumenu. disMissMenu (); // returntrue; // return false, in this case, the onKeyDown method of the parent class is not called back and the system returns the result. So we should write it as follows: return super. onKeyDown (keyCode, event);} returnsuper. onKeyDown (keyCode, event);} method 2: public boolean onKeyDown (int keyCode, KeyEvent event) {// TODOAuto-generated method stub // After rewriting the method, we can call the method of the parent class so that the system method can be called. onKeyDown (keyCode, event); if (keyCode = KeyEvent. KEYCODE_BACK) {morePopumenu. disMissMenu (); // returns true, indicating that the system can continue to process the operation of this button. // returns false, indicating that the processing of this button has ended, does not respond to system processing returntrue;} returnsuper. onKeyDown (keyCode, event );}

Android closes the entire activity because of the "return" key on the mobile phone. I want to make a "Return button" on the interface and return it to the previous layer.

You can change your mind.

If your listview is two, you can define a global variable,
Click on listview1 to enter listview2 and set this variable to 1 to record that the page to be returned is 1.
Then rewrite the button of the Return key to determine the variable number. If it is 1, listview2 is hidden and listview1.

If it is a listview, when the return key determines that the variable is 1, refresh the listview and reload the data.

However, we recommend that you use the first method to hide and display the data conveniently.
SetVisibility (View. GONE) is hidden, and setVisibility (View. VISIBLE) is display.

In addition, it is here to listen for the Return key.

Public boolean onKeyDown (int keyCode, KeyEvent event ){
// Determine whether the pressed key is the return key.
If (keyCode = KeyEvent. KEYCODE_BACK & event. getRepeatCount () = 0 ){
Switch (pageID ){
Case 1: // when the value is 1
Listview1.setVisibility (View. VISIBLE );
Listview2.setVisibility (View. GONE );
Break;
}
}
}

Similarly, if you do not want to use the return key, you can also use a Custom button to control hidden display in the button event.
How do I write the button listening.
Button. setOnClickListener (new OnClickListener (){
Public void onClick (View v ){
// What to do after being clicked.
}
});

There are many ways to implement it. The landlord should not be banned by "the previous layer". It will be okay if you think about it in another way .:)

Answer with a blue hand. You are welcome to copy the new shoes that have problems :)

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.