所以我试图通过 findViewById() 获取视图。它在模拟器 4.0 和 41 和 android 2.3 智能手机上就像一个魅力,但在三星银河选项卡上尝试时 - 变量始终为空。
HomeActivity.java
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.start_new_user);
ViewFlipper vf = (ViewFlipper) findViewById(R.id.viewFlipper1_newuser);
银河选项卡上的 vf 始终为空。如果我尝试用它做一些事情,比如 vf.getContext() 会得到一个 NPE。
start_new_user.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<TextView
android:id="@+id/tV_new_user"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_margin="10dp"
android:background="@drawable/roundedcorner"
android:padding="15dp"
android:text="@string/start_new_user" />
<LinearLayout
android:id="@+id/rl_calendar_newuser"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="4dp"
android:orientation="vertical" >
{...}
</LinearLayout>
<ViewFlipper
android:id="@+id/viewFlipper1_newuser"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
</ViewFlipper>
</LinearLayout>
</LinearLayout>