我创建了一个应用程序来显示TabHost
。但是,当我启动应用程序在模拟器关闭说应用程序不幸关闭
。我在网上搜索,但找不到任何解决方案。我的代码activity_main.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity">
<TabHost
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/tabHost"
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">
<TabWidget
android:id="@android:id/tabs"
android:layout_width="fill_parent"
android:layout_height="wrap_content"></TabWidget>
<FrameLayout
android:id="@android:id/tabcontent"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<LinearLayout
android:id="@+id/tab1"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">
</LinearLayout>
<LinearLayout
android:id="@+id/tab2"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"></LinearLayout>
<LinearLayout
android:id="@+id/tab3"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"></LinearLayout>
</FrameLayout>
</LinearLayout>
</TabHost>
美娜ctivity.java
public class MainActivity extends ActionBarActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
TabHost tabHost=(TabHost)findViewById(R.id.tabHost);
TabSpec tab1 = tabHost.newTabSpec("First Tab");
TabSpec tab2 = tabHost.newTabSpec("Second Tab");
TabSpec tab3 = tabHost.newTabSpec("Third tab");
tab1.setIndicator("Tab1");
tab1.setContent(new Intent(this,Tab1Activity.class));
tab2.setIndicator("Tab2");
tab2.setContent(new Intent(this,Tab2Activity.class));
tab3.setIndicator("Tab3");
tab3.setContent(new Intent(this,Tab3Activity.class));
tabHost.addTab(tab1);
tabHost.addTab(tab2);
tabHost.addTab(tab3);
}
我已经为Tab1、Tab2和Tab3创建了单独的. java文件。
Logcat是
06-01 01:40:35.429 1847-1847/com。realtech。6月1日带dalvikvm的标签﹕ threadid=1:线程退出时出现未捕获异常(组=0xa4cd3b20)06-01 01:40:35.441 1847-1847/com。realtech。6月1日表E/AndroidRuntime﹕ 致命异常:主进程:com。realtech。june_1_tab,PID:1847 java。lang.RuntimeException:无法启动活动组件信息{com.realtech.june_1_tab/com.realtech.june_1_tab.MainActivity}:java。android上的lang.NullPointerException。应用程序。活动线程。在android上执行LaunchActivity(ActivityThread.java:2184)。应用程序。活动线程。android上的handleLaunchActivity(ActivityThread.java:2233)。应用程序。活动线程。在Android上获得800美元(ActivityThread.java:135)。应用程序。android上的ActivityThread$H.handleMessage(ActivityThread.java:1196)。操作系统。汉德勒。android上的dispatchMessage(Handler.java:102)。操作系统。活套。android上的loop(Looper.java:136)。应用程序。活动线程。java上的main(ActivityThread.java:5001)。朗,反思一下。方法java上的Invokenactive(本机方法)。朗,反思一下。方法在com上调用(Method.java:515)。Android内部的操作系统。ZygoteInit$MethodandArgscaler。在com上运行(zyteinit.java:785)。Android内部的操作系统。合子体。dalvik的main(ZygoteInit.java:601)。系统原生艺术。主要(本机方法)由以下原因引起:java。android上的lang.NullPointerException。小装置。塔布霍斯特。addTab(TabHost.java:236)位于com。realtech。六月一日。主要活动。android上的onCreate(MainActivity.java:34)。应用程序。活动android上的performCreate(Activity.java:5231)。应用程序。仪器。android上的callActivityOnCreate(Instrumentation.java:1087)。应用程序。活动线程。在android上执行LaunchActivity(ActivityThread.java:2148)。应用程序。活动线程。android上的handleLaunchActivity(ActivityThread.java:2233)。应用程序。活动线程。在android上访问800美元(ActivityThread.java:135)
。应用程序。android上的ActivityThread$H.handleMessage(ActivityThread.java:1196)
。操作系统。汉德勒。android上的dispatchMessage(Handler.java:102)。操作系统。活套。android上的loop(Looper.java:136)。应用程序。活动线程。main(ActivityThread.java:5001)
位于java。朗,反思一下。方法java上的Invokenactive(本机方法)。朗,反思一下。方法在com上调用(Method.java:515)。Android内部的操作系统。ZygoteInit$MethodandArgscaler。在com上运行(zyteinit.java:785)。Android内部的操作系统。合子体。main(ZygoteInit.java:601)
位于dalvik。系统原生艺术。main(本地方法)06-01 01:42:24.121 1847-1847/com。realtech。6月1日制表I/流程﹕ 发出信号。PID:1847 SIG:9
onCreate()第34行有一个空指针异常。
另外,我不推荐您使用的模式(活动与承载其他活动的选项卡。尝试切换到具有FragmentPagerAdapter和Fragments作为UI的ViewPager。它更容易,更干净。
你犯了一个错误。在布局XML文件中,您使用的默认设置@id/tabhost未运行的tabhost id必须更改为@android:id/tabhost。
我正在尝试连接到openweather的测试代码。org和providen api。 如果我使用浏览器访问url: http://api.openweathermap.org/data/2.5/weather?id=2172797 然后,我得到了正确的Json:{“coord”:{“lon”: 145.77,“lat”:-16.92},“天气”:[{“id”: 803,“main”:“Clouds
Win7-64,Python 3.6。将tensorflow升级到1.8后,如下文本 给出错误: Traceback(最近一次调用最后一次):File"C:\Program Files\Python36\lib\site-pack\tenorflow\python\pywrap_tensorflow_internal.py",第14行,swig_import_helper返回importlib.i
以前它工作得很好,现在它不工作了 我使用了以下插件: 登录代码很简单,如说明所示: 离子型: ionic(ionic CLI):4.1.2离子框架:离子角3.9.2@ionic/app脚本:1.3.1 科尔多瓦: 科尔多瓦(科尔多瓦CLI): 8.1.2(cordova-lib@8.1.1)科尔多瓦平台:Android7.1.4科尔多瓦插件:科尔多瓦插件-离子键盘2.1.2,科尔多瓦插件-离子-w
为什么这个节目不播放音乐?我正在尝试用JavaFX制作一个应用程序,允许用户播放任何他想播放的MP3文件。但它根本不起作用!为什么? 它绝对不会出错! 我做了一些研究并替换了一些代码。现在唯一发生的事情是没有音乐播放和应用程序停止运行。 我做错了什么?
我正在使用ApachePOI读取Excel文件,它在本地机器(独立程序)中运行良好,但在服务器(IBMWebSphere)中未运行。当遇到实例化工作簿时,它停止工作。 下面的罐子被使用。 commons-codec-1.5.jarpoi-3.9.jarpoi-examples-3.9.jarpoi-ooxml-3.9.jarpoi-ooxml-schemas-3.9.jarxmlbeans-2.6
理解Gradle profile报告时遇到了困难,这些报告的执行任务结果是“没有工作”。 Gradle文档只是声明,结果将反映为没有跳过但没有工作的任务。这是否意味着构建任务不起作用,只是调用和/或依赖Java插件中的其他子任务?