- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我将在 udacity.com 上接受 Android 开发人员培训,然后实现 Sunshine 应用程序。我正在使用 Android Studio,最新版本默认安装。
我正处于我应该拥有一个带有模拟数据的 ListView 的地步,但我得到了一个 NullPointerException:
07-23 13:12:51.371 1677-1677/com.mydomain.sunshine E/AndroidRuntime﹕ FATAL EXCEPTION: main
Process: com.mydomain.sunshine, PID: 1677
java.lang.NullPointerException
at android.widget.ArrayAdapter.createViewFromResource(ArrayAdapter.java:392)
at android.widget.ArrayAdapter.getView(ArrayAdapter.java:362)
at android.widget.AbsListView.obtainView(AbsListView.java:2263)
at android.widget.ListView.measureHeightOfChildren(ListView.java:1263)
at android.widget.ListView.onMeasure(ListView.java:1175)
at android.view.View.measure(View.java:16497)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5125)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:310)
at android.view.View.measure(View.java:16497)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5125)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:310)
at android.view.View.measure(View.java:16497)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5125)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:310)
at android.view.View.measure(View.java:16497)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5125)
at com.android.internal.widget.ActionBarOverlayLayout.onMeasure(ActionBarOverlayLayout.java:327)
at android.view.View.measure(View.java:16497)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5125)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:310)
at com.android.internal.policy.impl.PhoneWindow$DecorView.onMeasure(PhoneWindow.java:2291)
at android.view.View.measure(View.java:16497)
at android.view.ViewRootImpl.performMeasure(ViewRootImpl.java:1916)
at android.view.ViewRootImpl.measureHierarchy(ViewRootImpl.java:1113)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1295)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1000)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:5670)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:761)
at android.view.Choreographer.doCallbacks(Choreographer.java:574)
at android.view.Choreographer.doFrame(Choreographer.java:544)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:747)
at android.os.Handler.handleCallback(Handler.java:733)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:136)
at android.app.ActivityThread.main(ActivityThread.java:5017)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
at dalvik.system.NativeStart.main(Native Method)
我运行了调试器并发现它发生在这里:
listView.setAdapter(mForeCastAdapter);
当我评论说它运行时,但显然没有显示任何内容,但至少它没有崩溃。
这是我的 MainActivity.java 的 onCreateView() :
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.fragment_main, container, false);
String[] forecastArray={
"foo",
"bar",
"baz",
"fiz",
};
List<String> weekForecast = new ArrayList<String> (Arrays.asList(forecastArray));
mForeCastAdapter = new ArrayAdapter<String>(
getActivity(),
R.layout.list_item_forecast,
R.id.listview_forecast,
weekForecast);
ListView listView = (ListView) rootView.findViewById(R.id.listview_forecast);
listView.setAdapter(mForeCastAdapter);
return rootView;
}
这是我的 fragment_main.xml:
<FrameLayout 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$PlaceholderFragment">
<ListView
android:id="@+id/listview_forecast"
android:layout_width="wrap_content"
android:layout_height="wrap_content" /></FrameLayout>
最后是我的 list_item_forecast.xml:
<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="match_parent"
android:layout_width="match_parent"
android:minHeight="?android:attr/listPreferredItemHeight"
android:gravity="center_vertical"
/>
非常感谢!
最佳答案
改变:
mForeCastAdapter = new ArrayAdapter<String>(
getActivity(),
R.layout.list_item_forecast,
R.id.listview_forecast,
weekForecast);
到:
mForeCastAdapter = new ArrayAdapter<String>(
getActivity(),
R.layout.list_item_forecast,
weekForecast);
您正在使用的构造函数中的 ID 参数应该是行布局内 TextView
的 ID。不过,只有当您的行布局不仅仅是一个 TextView
时才需要这样做。在你的情况下:
行布局只是一个TextView
,不需要提供ID
您提供的 ID 不是针对行布局中的 TextView
,而是针对其他地方的 ListView
关于java - Udacity Sunshine 应用程序 - 第 1 课 - 尝试显示模拟 ListView 时出现 NullPointerException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24917314/
我正在为数据结构类(class)做期末练习,我有几个问题希望得到帮助: void BST::traverse(Vertex *V) // post order traversal recursive
我正在 udacity.com 上进行 Android 开发培训,随后进行了 sunny 应用程序的实现。我正在使用 android studio 最新版本进行实现。 我正要到达我应该获得模拟 Lis
~~~更新:已解决!谢谢大家!~~~ 我正在研究 Blue Pelican Java 书中的一个项目,第 16 课项目 Gas Mileage。它要求创建两个类,一个是 Automobile,它包含我
我已经阅读了很多有关依赖注入(inject)、控制反转和 IoC 容器的文章。我还主要使用动态语言编程(工作中使用 PHP,在家使用 Python)。以下是我找到的东西,但是当我将它们拼凑在一起时,这
我有以下类层次结构: interface Repository // This class contains some common stuff for LocalRepository and Rem
我正在观看 Erik Meijer 的 Functional Programming Fundamentals 系列讲座(附有 Graham Hutton 的幻灯片)。 在 lecture 8 (on
一个文本文件包含有关垒球队的信息。每行数据排列如下: 4 Jessie Joybat 5 2 1 1 第一项是玩家的编号,方便地在 0-18 范围内。第二项是玩家的名字,第三项是玩家的姓氏。每个名字都
我正在学习 Codility 计数课 ( https://codility.com/media/train/2-CountingElements.pdf ),我需要帮助来了解最快的解决方案。 我想知道
我是编码新手,即将完成“使用 Swift 进行 App 开发入门”iBook。我目前正在学习第 19 课,枚举和开关,在相关 Playground 的第 8 页,它显示了以下代码: enum Lunc
我真的尝试过研究这个问题,但我现在离它太近了,我担心如果不寻求帮助我就找不到解决方案。我正在学习 RubyMonk,其中一个练习让我完全不知所措。 class Hero def initializ
在观看 Lecture 10 iTunes 视频的同时尝试跟进并编写 Smashtag 项目。 当我将下载的 Twitter 包添加到我的 Smashtag 项目时,当我在 TweetTableVie
public int solution(int[] A) { int lengthOfArray = A.length; int tempArray[] = new int[lengt
所以我收到此错误消息,指出无法解析fragment_ main xml 中的符号它出现在这行代码上 tools:context=".MainActivity$ForecastFragment">其中的
使用 NodeSchool.io 学习 Node.js,我对以下两个代码段之间的差异感到困惑。这种差异可能对于 Node.js 或一般的 JS 来说是根本性的,所以我希望专家能够向我澄清这一点。 第
这是我想为每个行为类似于切片的类型实现的特征(针对问题进行了简化): trait SliceLike { type Item; /// Computes and returns (ow
这节课应该非常简单。他们拼出了答案,但我自己和论坛中的 10 多个人无法让本类(class)发挥作用。 我们是否错误地实现了代码?教训是否具有误导性?答案检查器是否已损坏? http://www.co
我将在 udacity.com 上接受 Android 开发人员培训,然后实现 Sunshine 应用程序。我正在使用 Android Studio,最新版本默认安装。 我正处于我应该拥有一个带有模拟
这个问题已经有答案了: Why is "None" printed after my function's output? (7 个回答) 已关闭 6 年前。 我已经在互联网上搜索并尝试了代码的变体,
我无法在我的 Rails 应用程序中使用 Ajax。 借助 Ajax 的魔力:当我单击“关注”按钮时,它应该更新用户在个人资料页面中看到的关注者数量,而无需刷新页面。但是,在我的示例应用程序中,这并没
我正在关注关于 Redux 的 egghead.io 教程。我在第 17 课上遇到了 Dan Abramov 没有的错误。代码如下。 我得到的错误是 “类型错误:无法读取未定义的属性‘map’ 根据我
我是一名优秀的程序员,十分优秀!