当前位置: 首页 > 知识库问答 >
问题:

使列表片段打开一个活动

居晗日
2023-03-14

Oke所以我对android studio和android应用程序开发基本上是新手,但我想做一个应用程序,让我的青年运动可以用它作为一种数据库,但我遇到了一个问题。

我有一个包含所有组的抽屉,如果你按下抽屉按钮,它会打开一个包含名称的列表片段,我想做的是,当我按下名称时,会出现一个带有名称、照片和电话号码的活动。但我似乎不知道如何从列表片段中打开活动。

这里是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_活动代码。

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.testE/AndroidRuntime﹕FATAL EXCEPTION: main进程:app.jarifile.test, PID: 24081android.content.ActivityNotFoundExctive:无法找到显式的活动类{app.jarifile.test/app.jarifile.test.Test_Activity};您是否在您的Androidanifest.xml?中声明此活动android.app.nstrumentation.checkStartActivityResult(nstrumentation.java:1793)android.app.nstrumentation.execStartActivityResult(nstrumentation.java:1515)android.app.Activity.startActivityForResult(Activity.java:4026)在android.app.Activity.startActivityForResult(Activity.java:3973)在android.support.v4.app.FragmentActivity.startActivityForResult(FragmentActivity.java:748)在android. app. Activity. staractive(Activity. java: 4297)在app. jarifile. test.Givers_Fragment. onListItem点击(Givers_Fragment. java: 51)在android. support. v4. app. listFragment2美元. onItem点击(ListFragment. java: 58)在android. Widget. AdapterView. performItem点击(AdapterView. java: 339)在android. Widget. AbsListView. performItem点击(AbsListView. java: 1544)在android. Widget. AbsListView$PerformClick. run(AbsListView. java: 3721)方法。调用(方法。java: 372)在com. android. interal. os。ZygoteInit$metodAndArgsCaller. run(ZygoteInit. java: 1404)在com. android. interal. os。ZygoteInit. main(ZygoteInit. java: 1199)09-28 18:48:31.635 24081-24081/app. jarifile. test我/进程︰发送信号。PID: 24081 SIG: 9

谢谢你的帮助。

共有2个答案

林彬
2023-03-14

尝试用getActivity()替换startActivity(i)。星触觉(一)

常元章
2023-03-14

您还没有在您的Androidanifest.xml中声明Test_Activity。您应用程序中的所有活动都必须在那里声明。下面是一个可能的示例:

 <manifest ... >
    <application ... >
      <activity android:name=".Test_Activity" />
      ...
    </application ... >
  ...
  </manifest>

http://developer.android.com/guide/components/activities.html#Declaring

 类似资料:
  • 我想按下mainactivity中的一个按钮,该按钮将启动一个包含片段的新活动的意图。我写了一个主要的活动。带有main活动和第二个_活动按钮的xml。带有片段的xml。当我单击按钮时,第二个活动将由于xml中的片段而崩溃。我已经添加了一个标志,但它没有帮助。该应用程序的想法是通过按下主活动中的按钮,在第二个活动中获取谷歌地图。 我希望你能帮助我:/ 主要活动: 亚活性: activity_mai

  • 在我的中有5个片段(home、settings、newPost、notifications和profile)。 在中,我有一个,其中包含许多post视图,每个post都包含一个“open”按钮,该按钮应该打开一个。问题是,我只能在类和populateItemRows()方法中使用,所以当我不能使用... RecycerViewAdapter:

  • 问题内容: 我是Android的新手,这是我的第二个应用程序。我正在创建一个选项卡式活动,其中第一个片段具有创建新任务的形式,第二个片段具有所有已保存任务的列表,第三个片段从第二个列表中选择时将显示任务注释分段。第三个片段也应该像一个聊天活动,当您键入评论并点击发送按钮时,它会发布评论。当我从另一个地方(在下面的链接的GitHub分支中)实施此聊天活动时,该应用程序将完全按预期运行。但是,当我尝试

  • 问题内容: 从Activity中包含的RecyclerView的适配器中,我试图在按下RecyclerView的元素时启动一个片段,这是我现在的代码: 我测试了它是否启动了我创建的一些“测试活动”,所以我知道除了片段启动之外的所有功能都可以正常工作。 错误在这里: 我正在启动作为活动的Fragment,所以当我运行应用程序时,它崩溃了,并告诉我在清单中将MainFragment声明为活动。 如何从

  • 我合并了一个水平幻灯片导航组件(这需要使类扩展片段)。滑动部分工作正常。这里我有相应的<code>onClick() 到目前为止,我的代码还不多,所以我不会用相关的布局部分来混淆我的问题。任何帮助都是非常感谢的。 片段#1的Java代码 public class TasksFragment扩展Fragment { @ Override public View oncreate View(layou

  • 我有两个碎片,两个碎片上都有一个按钮。当我按下按钮时,我想开始一项新的活动。但我不能让它工作。 我得到的错误:这里的错误:类型不匹配:无法从mFragmentFavorite转换为片段 我做错了什么? 我的碎片寻呼机适配器 收藏夹 如果FavoriteActivity扩展了片段,那么错误就消失了,但是我在findViewById(R.id.mainFavorite)处得到了一个错误 错误为 fin