Android屏幕间的跳转和事件的传递

在一般情况下,Android的每一个屏幕基本上就是一个Activity,屏幕间的切换实际上就是在互相调用的过程,Android使用Intent完成这个动作。包括两种跳转:无返回值和有返回值。

一、无返回值跳转

public void onClick(View v) {                   Intent intent=new Intent(TestAndroidActivity.this,t2.class);                   startActivity(intent);               }  

二、带有返回值的跳转

ReceiveResult.java片段

static final private GET_CODE = 0;   <pre class="java" name="code">public void onClick(View v) {               // Start the activity whose result we want to retrieve.  The               // result will come back with request code GET_CODE.               Intent intent = new Intent(ReceiveResult.this, SendResult.class);               startActivityForResult(intent, GET_CODE);           }  

SendResult.java片段

public class SendResult extends Activity   {       /**       * Initialization of the Activity after it is first created.  Must at least       * call {@link android.app.Activity#setContentView setContentView()} to       * describe what is to be displayed in the screen.       */       @Override       protected void onCreate(Bundle savedInstanceState)       {           // Be sure to call the super class.            super.onCreate(savedInstanceState);              // See assets/res/any/layout/hello_world.xml for this            // view layout definition, which is being set here as            // the content of our screen.            setContentView(R.layout.send_result);              // Watch for button clicks.            Button button = (Button)findViewById(R.id.corky);           button.setOnClickListener(mCorkyListener);           button = (Button)findViewById(R.id.violet);           button.setOnClickListener(mVioletListener);       }          private OnClickListener mCorkyListener = new OnClickListener()       {           public void onClick(View v)           {               // To send a result, simply call setResult() before your                // activity is finished.                setResult(RESULT_OK, (new Intent()).setAction("Corky!"));               finish();           }       };          private OnClickListener mVioletListener = new OnClickListener()       {           public void onClick(View v)           {               // To send a result, simply call setResult() before your                // activity is finished.                setResult(RESULT_OK, (new Intent()).setAction("Violet!"));               finish();           }       };   }  

ReceiveResult.java 片段

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wwzwpx.html