2014-07-17 52 views
1
 public void onItemClick(AdapterView<?> parent, View view, int position, 
      long id) { 
     //Toast.makeText(getApplicationContext(), "Position of selected item is: "+ position, Toast.LENGTH_LONG).show(); 

     if ("Abiding in Christ".equals(categories[position])) 
       {startActivity(AbidingInChrist.class);} 
     else if ("Abundant Living".equals(categories[position])) 
       {startActivity(AbundantLiving.class);} 
     else if ("Access to God".equals(categories[position])) 
       {startActivity(AccessToGod.class);} 
     else if ("Adoration of God".equals(categories[position])) 
       {startActivity(AdorationOfGod.class);} 
     else if ("Amazing Grace".equals(categories[position])) 
       {startActivity(AmazingGrace.class);} 

所有startActivity都以紅色下劃線,並且希望我改成某個東西或者創建一個同名的方法。我做了所有的活動,增加了清單,但其中一些沒有工作:startActivity不起作用

<activity android:name=".AbidingInChrist"</activity> 
    <activity android:name=".AbundantLiving</activity> 
    <activity android:name=".AccessToGod</activity> 
    <activity android:name=".AdorationOfGod</activity> 
    <activity android:name=".AmazingGrace</activity> 
    <activity android:name=".AnsweredPrayer</activity> 
    <activity android:name=".Atonement</activity> 
    <activity android:name=".Attitudes</activity> 
    <activity android:name=".Belief</activity> 
    <activity android:name=".Blessing</activity> 
    <activity android:name=".BloodOfJesus</activity> 
    <activity android:name=".Boldness</activity> 
    <activity android:name=".Brokenness</activity> 
    <activity android:name=".Calling</activity> 
    <activity android:name=".Comfort</activity> 
    <activity android:name=".Commitment</activity> 

很難在這裏說,但每隔一個是紅說,這是缺少了Android命名空間前綴。

感謝你們!

+1

嗯,首先,如果你從你的清單,你應該添加收盤'「>'它。 – CodeMonkey

+1

如果這真的是你的清單次複製的''名單我很驚訝你的應用程序甚至編譯... –

+2

你的''標籤格式不正確。他們應該都是這樣的:''或''。 –

回答

7

在您的代碼嘗試使用意圖啓動活動:

Intent i = new Intent(ACTUALACTIVITY.this, OTHERACTIVITY.class); 
       startActivity(i); 

,並在您清單把你的活動的詳細地址(package.activity)象下面這樣:

<application> 
(...) 
      <activity 
       android:name="packagename.YOURACTIVITY"> 
      </activity> 
</application> 
0

嘗試創建意圖和開始活動通過這種意圖,如

// Create intent to start new Activity 
Intent intent = new Intent(context, YourActivity.class); 
startActivity(intent); 
+0

請格式化您的代碼 –

+0

是的,我明白了,但我如何將它作爲類(活動)傳遞給選定的位置? – 999

+0

sunladyjoy,您可以使用Intent類putExtra()的重載方法,其中您使用KEY-VALUE對傳遞數據。然後,根據您的意圖開始的其他活動可以使用get(SOMETHING)Extra()方法檢索傳遞的值,並根據需要使用您的值。 – Lanitka

0

startActivity我thod需要一個Intent作爲參數。喲試圖傳遞的一類,這就是爲什麼你得到了「紅色下劃線」

試試這個:

if ("Abiding in Christ".equals(categories[position])) 
      {startActivity(new Intent(this, AbidingInChrist.class));} 
    else if ("Abundant Living".equals(categories[position])) 
      {startActivity(new Intent(this, AbundantLiving.class));} 
    else if ("Access to God".equals(categories[position])) 
      {startActivity(new Intent(this, AccessToGod.class));} 
    else if ("Adoration of God".equals(categories[position])) 
      {startActivity(new Intent(this, AdorationOfGod.class));} 
    else if ("Amazing Grace".equals(categories[position])) 
      {startActivity(new Intent(this, AmazingGrace.class));} 

另外,在你的清單不要忘記關閉引號,當你宣佈一個活動

 <activity android:name=".AbidingInChrist"></activity> 
     <activity android:name=".AbundantLiving"></activity> 
     <activity android:name=".AccessToGod"></activity> 

+1

不要忘記關閉開始標記。也就是說,你錯過了'>'s。 –