2013-02-03 87 views
0

我剛開始閱讀有關android開發的內容,並且我正在使用Eclipse。 我的問題是,AndridManifest文件如何通過使用活動標籤中的信息知道要調用哪個xml文件。例如,我剛剛添加了一個新活動,並將其稱爲activity_two,因爲eclipse爲我生成了兩個主文件ActivityTwo.javaactivity_activity_two.xml。這也增加了活動代碼清單文件,該文件是清單文件如何將活動標籤鏈接到活動文件

 <activity 
      android:name=".ActivityTwo" 
      android:label="@string/title_activity_activity_two" > 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 
       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 

現在的問題是如何日食知道這個標籤與activity_activity_two.xml關聯?

回答

1

Eclipse不知道任何活動的佈局文件。
後來,裏面OnCreate方法,你需要通過編寫簡單的線條「給」她的活動佈局文件:setContentView(R.layout.activity_activity_two);

+0

其中一個java文件haas'@Override public void onCreate(Bundle savedInstanceState) {\t super.onCreate(savedInstanceState); ..「這是否意味着活動的名稱正在傳遞給它? –

+0

否super.onCreate(savedInstanceState)表示該活動將調用父方法與數據,該數據在其銷燬之前已存儲。那savedInstanceState只是一個簡單的Map,裏面有一些數據。 – Procurares

2

你混合的東西。

ActivityTwo.java

是您的活動,在這裏您可以添加應用程序代碼。在你的清單中,你有一個類似於以下的<manifest>標籤和一個包裝聲明。

<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="com.example.pedal" 
    android:versionCode="1" 
    android:versionName="1.0" > 

所以,你可以看到,我的例子包是com.example.pedal

然後你以後在你的<Application>標籤中有一個或多個活動聲明。

<application 
    android:allowBackup="true" 
    android:icon="@drawable/ic_launcher" 
    android:label="@string/app_name" 
    android:theme="@style/AppTheme" > 
    <activity 
     android:name=".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=".ActivityTwo" 
     android:label="@string/app_name" > 
    </activity> 

</application> 

所以要找到你的活動文件,它將加入包串,用你的活動名稱:

com.example.pedal.MainActivity

在這個例子中,有兩個活動。意圖 <category android:name="android.intent.category.LAUNCHER" /> 定義應用程序啓動時將執行哪些活動。

如果您在清單

<activity 
      android:name="com.example.PackageTwo.ActivityTwo" 
      android:label="@string/app_name" > 
     </activity> 

activity_activity_two.xml

在你/src結構不同的包,你可以使用完整的包名稱引用它們,用類是一個佈局文件。在那裏您將定義將顯示在您的活動中的視圖。如何它看起來像,哪些按鈕,textviews,無論你決定,並作爲@Procurares以上回答,那就是使用定義:

setContentView(R.layout.activity_activity_two);

The developer's guide提供了關於如何活動的工作很好的指導作用。

也回答你的評論。我不確定活動的名稱是否通過了捆綁包(但我懷疑)。其中包含的信息是關於活動的狀態以防需要重新創建。關於主題here有一個非常有用的帖子。