我想弄清楚如何與我的應用程序有多個活動。我已經將它分解到最低的元素,以便輕鬆查看我在做什麼並理解我的問題。在活動之間切換時是否需要添加某些內容以避免內存泄漏?
程序運行時會顯示一個屏幕(活動),其中顯示「多個活動示例(screen1)」。它有一個「按鈕1」來點擊查看下一個活動。
單擊按鈕1將帶您進入不同的活動屏幕,其中顯示「多個活動示例(屏幕2)」。它有一個按鈕2,按下後會返回到screen1。
我想弄清楚返回到前一個屏幕的某種類型的返回方法,但找不出任何。
所以,我的關心/問題是,是否存在某種類型的內存泄漏,使用此方法時會深入到需要某種返回類型的圖層中?
代碼已附上。
MainActivity:
package apollo.MultipleActivities;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
public void button1_click(View v) {
Intent myIntent = new Intent(this, SecondActivity.class);
startActivity(myIntent);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
次活動:
package apollo.MultipleActivities;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
public class SecondActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.secondactivity);
}
public void button2_click(View v) {
Intent myIntent = new Intent(this, MainActivity.class);
startActivity(myIntent);
}
}
主要活動XML佈局:
<?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="@string/screen1" />
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/button1" android:onClick="button1_click"/>
</LinearLayout>
次活動XML佈局:
<?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="@string/screen2" />
<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="button2_click"
android:text="@string/button2" />
</LinearLayout>
清單文件:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="apollo.MultipleActivities"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="19" />
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name="apollo.MultipleActivities.MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".SecondActivity"></activity>
</application>
</manifest>
的應用程序運行完美,也正是我試圖把它做的。我關心的是整體Android的完整性。如果程序保持運行並且被大量使用,我是否因內存泄漏而崩潰。
謝謝!
謝謝!選項#1正是我正在尋找的。它完美的作品。 –