2015-09-24 25 views
0

Oke所以我真的很新的android工作室和Android應用程序開發一般,但我想做一個應用程序,我的青年運動可以使用作爲一種數據庫,但我遇到了問題。讓ListFragment打開一個活動

所以我有一個抽屜與所有組,如果你按下抽屜按鈕它打開一個ListFragment與名稱,我想要發生的是當我按名稱一個活動顯示與名稱的照片和電話數。但我似乎無法弄清楚如何從該listFragment打開一個活動。

這裏是ListFragment.java

package app.jarifile.test; 

import android.content.Intent; 
import android.os.Bundle; 
import android.support.v4.app.ListFragment; 
import android.view.View; 
import android.widget.ArrayAdapter; 
import android.widget.ListView; 

/** 
* Created by User on 23/09/2015. 
*/ 
public class Givers_Fragment extends ListFragment { 

Intent i; 

String[] listitems = { 
     "(Takleider)", 
     "(Takleider)", 
     "(Leider)", 
     "(Leider)" 
}; 
@Override 
public void onCreate(Bundle savedInstanceState){ 
    super.onCreate(savedInstanceState); 
} 

@Override 
public void onActivityCreated(Bundle savedInstanceState){ 
    super.onActivityCreated(savedInstanceState); 
    setListAdapter(new ArrayAdapter<String>(getActivity(), android.R.layout.simple_list_item_1, listitems)); 
} 

@Override 
public void onListItemClick(ListView l, View v, int position, long id){ 

    switch(position){ 
     case 0: 
      i = new Intent(getActivity(), Test_Activity.class); 
      break; 
     case 1: 
      i = new Intent(getActivity(), Test_Activity.class); 
      break; 
     case 2: 
      i = new Intent(getActivity(), Test_Activity.class); 
      break; 
    } 
    startActivity(i); 
} 

這是Test_Activity代碼。

package app.jarifile.test; 

import android.app.Activity; 
import android.os.Bundle; 



/** 
* Created by User on 24/09/2015. 
*/ 

public class Test_Activity extends Activity { 

@Override 
public void onCreate(Bundle savedInstanceState){ 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.test_layout); 
} 

這就是說logcat中

09-28 18:48:28.915 24081-24081/app.jarifile.test E/AndroidRuntime:致命異常:主 工藝:app.jarifile.test, PID:24081 android.content.ActivityNotFoundException:無法找到顯式活動類{app.jarifile.test/app.jarifile.test.Test_Activity};你有沒有在你的AndroidManifest.xml中聲明這個活動? at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1793) at android.app.Instrumentation.execStartActivity(Instrumentation.java:1515) at android.app.Activity.startActivityForResult(Activity.java:4026) at android.app.Activity.startActivityForResult(Activity.java:3973) at android.support.v4.app.FragmentActivity.startActivityForResult(FragmentActivity.java:748) at android.app.Activity.startActivity(Activity.java:4297) at android.app.Activity.startActivity(Activity.java:4265) at app.jarifile.test.Givers_Fragment.onListItemClick(Givers_Fragment.java:51) at android.support.v4.app.ListFragment $ 2.onItemClick(ListFragment .java:58) at android.widget.AdapterView.performItemClick(AdapterView.java:339) at android.widget.AbsListView.performItemClick(AbsListView.java:1544) at android.widget.AbsListView $ PerformClick.run(AbsListView.java:3721) at android.widget.AbsListView $ 3.run(AbsListView.java:5660) at android.os.Handler.handleCallback(Handler.java:739) at android.os.Handler.dispatchMessage(Handler.java:95) 在java.lang.reflect.Method.invoke(本地方法) 上的android.app.ActivityThread.main(ActivityThread.java:6837) 。 lang.reflect.Method.invoke(Method.java:372) at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run (ZygoteInit.java:1404) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1199) 09-28 18:48:31.635 24081-24081/app.jarifile.test I/Process:Sending信號。 PID:24081 SIG:9

謝謝你的幫助。

+0

當你選擇一個列表項發生了什麼事?沒有?你的應用崩潰了嗎? – NasaGeek

+0

該應用崩潰了。 –

+0

你可以發佈應用程序崩潰時產生的堆棧跟蹤嗎?它應該可以通過檢查'adb log'命令的輸出或通過查看Android Studio中的「Android」窗口來獲得。此外,崩潰的一個潛在原因是,當您按列表中的最後一項(索引3)時,您沒有這種情況。所以你會嘗試用未初始化的Intent調用'startActivity()'。 – NasaGeek

回答

0

嘗試更換startActivity(i)與getActivity()。startActivity(I)

+0

謝謝你的答案,但這似乎不適用於我。 –