eclipse-才刚刚开始学习安卓就出现问题,求解答

问题描述

才刚刚开始学习安卓就出现问题,求解答

代码如下:package com.example.android_4_1;

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

public class MainActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    MyView myView = new MyView(this);
    this.setContentView(myView);
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.main, menu);
    return true;
}

}

感觉代码没什么错,但是在模拟机上打开就 The application....has stopped unexpectedly!调试的时候会弹出找不到源。不知道是不是我环境没有搭建好。求帮忙~

08-12 14:39:12.440: D/AndroidRuntime(522): Shutting down VM
08-12 14:39:12.440: W/dalvikvm(522): threadid=1: thread exiting with uncaught exception (group=0x40015560)
08-12 14:39:12.490: E/AndroidRuntime(522): FATAL EXCEPTION: main
08-12 14:39:12.490: E/AndroidRuntime(522): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.android_4_1/com.example.android_4_1.MainActivity}: java.lang.NullPointerException
08-12 14:39:12.490: E/AndroidRuntime(522): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1647)
08-12 14:39:12.490: E/AndroidRuntime(522): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1663)
08-12 14:39:12.490: E/AndroidRuntime(522): at android.app.ActivityThread.access$1500(ActivityThread.java:117)
08-12 14:39:12.490: E/AndroidRuntime(522): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:931)
08-12 14:39:12.490: E/AndroidRuntime(522): at android.os.Handler.dispatchMessage(Handler.java:99)
08-12 14:39:12.490: E/AndroidRuntime(522): at android.os.Looper.loop(Looper.java:123)
08-12 14:39:12.490: E/AndroidRuntime(522): at android.app.ActivityThread.main(ActivityThread.java:3683)
08-12 14:39:12.490: E/AndroidRuntime(522): at java.lang.reflect.Method.invokeNative(Native Method)
08-12 14:39:12.490: E/AndroidRuntime(522): at java.lang.reflect.Method.invoke(Method.java:507)
08-12 14:39:12.490: E/AndroidRuntime(522): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
08-12 14:39:12.490: E/AndroidRuntime(522): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
08-12 14:39:12.490: E/AndroidRuntime(522): at dalvik.system.NativeStart.main(Native Method)
08-12 14:39:12.490: E/AndroidRuntime(522): Caused by: java.lang.NullPointerException
08-12 14:39:12.490: E/AndroidRuntime(522): at com.example.android_4_1.MyView.(MyView.java:14)
08-12 14:39:12.490: E/AndroidRuntime(522): at com.example.android_4_1.MainActivity.onCreate(MainActivity.java:13)
08-12 14:39:12.490: E/AndroidRuntime(522): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
08-12 14:39:12.490: E/AndroidRuntime(522): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1611)
08-12 14:39:12.490: E/AndroidRuntime(522): ... 11 more

解决方案

setContentView()调用2次了,把默认那个注释掉在试试

解决方案二:

setcontentview一般不像你这么用。。。一般默认的读一个布局就好了,把你自己写的控件放在布局上。。。不要像你写的那个new一个。。。这样子很容易出问题

解决方案三:

删掉“MyView myView = new MyView(this);
this.setContentView(myView);”
然后在R.layout.activity_main中随便添加一个控件,然后把控件名改为你的View的名字,注意要包含包名哦。

com.example.android_4_1.MyView
android:id="@+id/MyView"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true" />

解决方案四:

Caused by: java.lang.NullPointerException
08-12 14:39:12.490: E/AndroidRuntime(522): at com.example.android_4_1.MyView.(MyView.java:14)

报了空指针异常,把这两句注释掉试试,怀疑是你的MyView是空的
MyView myView = new MyView(this);
this.setContentView(myView);

解决方案五:

如果环境没问题的话,把这两句注释掉试试
MyView myView = new MyView(this);
this.setContentView(myView);

时间: 2024-10-27 15:07:53

eclipse-才刚刚开始学习安卓就出现问题,求解答的相关文章

CMU机器学习学院院长Tom Mitchell:计算机模拟人脑才刚刚起步

GMIC 2017 北京大会于4月27日在国家会议中心拉开帷幕.下午,卡内基美隆大学机器学习学院教授兼院长Tom Mitchell带来了<突破人类和机器的边界>主题演讲,探讨了智能从物理的材料当中实现突破的两个方式. Mitchell教授认为科学界目前还在探索的两个主要方向就人脑智能和如何用机器打造人脑智能,在过去相当长一段时间内,脑科学和计算机科学是泾渭分明的两个领域.近些年基于对脑科学认识的不断加强,人工智能取得了新的发展.使得一些理论和假设在各个脑科学的方面都取得了突破,机器识别率已经从

李学农才刚刚学会用电脑玩“斗地主”

<中国经济周刊>记者 李妍 李学友,42岁,四川省成都市郫县安德镇园田村人,他与大多数中国农民一样勤劳.朴实.憨厚.单纯,他总爱操着一口浓重的四川腔,腼腆地说,"没啥子没啥子,种地的嘛!" 但谁也没料到,城市里的时髦玩意儿微博,竟然改变了这位乡村老农的平凡生活,他拥有了自己的"粉丝",他被称为"最潮的农民",他因此上了报纸和电视--农民李学友成了"名人". 四年前,2008年,李学农才刚刚学会用电脑玩"斗

FT Partners CEO:Fintech游戏才刚刚开始,未来真正的关注点在这里

金融科技的下一步:机遇在哪里? Knowledge@Wharton:2002年,您辞掉了高盛的工作,创立了FT Partners.在当时,FT Partners是唯一一家专注于金融科技的投行.您是怎么看到这个机遇的呢? Steve McLaughlin: 首先,当时金融科技才刚刚萌芽,我觉得它要长成大树,还需要15到20年的时间,不是一蹴而就的.其次,在当时,大型银行要么像金融服务公司,要么像科技公司,没有一家公司融合了两者.因此,我认为市场需要一家专注于金融科技的独立投行.最后,我发现投行和中

关于大数据和隐私的“辩论”才刚刚开始

多年来,隐私和大数据之间的关系已经变得非常敏感,随着新兴技术产生大量数据,关于两者之间"辩论"才刚刚开始. 随着日常生活中数据生成设备的数量不断增长,因此关于应将数据公开,以及何时应将个人数据视为私有的争论也在不断增加. SAP国家安全服务公司总裁兼首席执行官Mark Testoni说,"我们拥有所有信息,而且大部分情况下,我们还没有真正决定什么是私有或公有领域." "数据公开可以带来很多便利,但同时也存在一些安全问题,"Testoni说,&qu

一场智能手机生态大战才刚刚拉开帷幕

在苹果试图垄断移动终端市场的时候,安迪·鲁宾试图通过Android(安卓)与之抗衡.经过数年艰苦努力,Android终于成为在业界能够与苹果一较高下的开源平台.Android怎样与iPhone(苹果)进行竞争,而未来移动终端的市场将何去何从?Android正在悄悄搭建的生态系统,将很可能在未来3到5年内成为苹果最致命的竞争者.貌似尘埃落定的智能手机之战,其实才刚刚拉开帷幕. 被摩托罗拉闪了一下腰 安迪·鲁宾需要引起轰动.那是2009年1月,三年前谷歌收购了他创办的名为Android的公司.鲁宾曾

互联网对产业的深远影响才刚刚开始

"以电商为核心的互联网甚至是移动互联网"只是工具,怎样用好工具才是核心?也只有能够用好以互联网甚至是移动互联网工具的传统企业才有机会,无论是对于TO C还是 TO B. 从一个互联网人到传统企业人,从做传统企业转型电子商务的案例,到真正实操传统企业转型电子商务,一直想写点感悟,可惜一直没付诸行动,近日看到李彦宏在百度联盟大会上的演讲,结合最近互联网大佬们的并购重组如火如荼,突然觉得自己有义务将一个互联网人跨界的感受分享给大家. 李彦宏在演讲中认为互联网正在加速淘汰传统企业,互联网在整个

云,一切才刚刚开始

我出生在农村,小时候家里没有电,后来终于通了电,有了电灯,年幼的我以为电就只能用来照亮屋子,并不能想象电将在未来如何改变我们的生活. 20年后,我来到北京,第一次在大学的机房里见到了电脑.当时的电脑被丝绒布罩着,机房里专门铺设塑料空心地板,还有空调随时伺候着它.那时的电脑显示器只能显示绿色字体,连黑白的都没有,那样看起来,它的功能似乎比一台打字机也高级不了多少.那个时候,我从未想象过电脑日后会以这么快的速度渗入到我们的生活,并大大改变了我们的工作方式. 及至之后有了486,有了Windows,有

双11狂热背后的冷思考:传统零售的大数据、智能化转型才刚刚开始

本文是星河互联电商事业部对于零售行业现状和未来发展的一些思考,作者高宁和欧阳盈盈分别为星河互联电商事业部投资经理和分析师,关注产业信息化升级.B2B.供应链SaaS和智能商业等领域. 2017年"双11"交易额又创新高,巨额交易背后是各大平台提前数月的摩拳擦掌.这是一次全民的购物狂欢,更是一场暗流涌动的"军备竞赛",从中我们可以一窥整个零售行业的发展现状与未来趋势.  对于阿里来说,今年的双11算是对"新零售"概念的第一次全盘检阅.除了参与购物节

中国互联网二十年:变革其实才刚刚开始

中介交易 SEO诊断 淘宝客 云主机 技术大厅 对于一初生的婴儿而言,20年意味着他可以正式行冠礼;对于一新立的企业而言,20年意味着它进入了成熟期;对于历史并不悠久的互联网而言,20年却意味着天翻地覆.1994年4月20日,中关村地区教育与科研示范网络(简称NCFC)工程通过美国Sprint公司连入Internet的64K国际专线开通,实现了与Internet的全功能连接.至此,中国成为国际上第77个正式真正拥有全功能Internet的国家.到今年,中国接入互联网已经整整过去了20年的光阴.