3

我有一个UI向用户显示按钮集的多个视图。我使用 aviewflipper来管理按钮组之间的来回翻转。最近在 Android Studio 中出现了一条新的错误消息:

“方法调用 'viewflipper.getDisplayedChild()' 可能会产生 'java.lang.NullPointerException'...”

错误显示在 Activity 文件中的 ** ** 行:

@Override
protected void onCreate(final Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.cardviewinput);

    viewflipper = (ViewFlipper) findViewById(R.id.viewFlipper1);

   **if (viewflipper.getDisplayedChild() == 0)**
        viewflipper.setDisplayedChild(1);
        viewflipper.setDisplayedChild(viewflipper.indexOfChild(findViewById(R.id.cardviewNobuttons)));

"cardviewNobuttons"是我要显示的默认布局。

在 cardviewinput.xml 文件中:

...
<LinearLayout
    android:id="@+id/LinearLayout3"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="horizontal"
    android:gravity="center_vertical"  >

    <ViewFlipper
    android:id="@+id/viewFlipper1"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <include layout="@layout/cardview_nobuttons"
        android:id="@+id/cardviewNobuttons"  />

    <include layout="@layout/cardview_previewbuttons"
        android:id="@+id/cardviewPreviewbuttons" />

    <include layout="@layout/cardview_twobuttons"
        android:id="@+id/cardviewTwobuttons"  />

    </ViewFlipper>

</LinearLayout>

上述布局文件中的警告是“ViewFlipper 布局或其 LinearLayout 父级可能无用...”

有没有办法改进代码并消除错误消息/警告?

4

0 回答 0