Android нет грамматических ограничений Droid Схема сайта вниз - PullRequest
0 голосов
/ 24 октября 2011

Я создаю приложение с макетом вкладок, состоящее из 3 вкладок.две вкладки работают нормально, а третья работала до тех пор, пока я не реализовал коммутационный регистр, возможно, не связанный, при запуске программы он просто выдает ошибки при попытке доступа к этой вкладке в эмуляторе.Обычно это похоже на проблему с xml

Однако мой xml кажется безупречным, я заметил желтый флажок, указывающий на схемы, который не исчезнет, ​​я попытался проигнорировать и т.д.предполагает, что это может быть из-за того, что сайт схемы не работает, я пытался зайти на сайт и не могу, поэтому, может быть, он снова не работает ???

в любом случае, мне было интересно, если это является причиной моей проблемы.Кажется маловероятным, так как два других класса активности для двух других вкладок работают нормально, просто этот не работает.

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical" android:layout_width="fill_parent"
    android:layout_height="fill_parent">


    <EditText android:text="" android:id="@+id/etInput"
        android:layout_width="fill_parent" android:layout_height="wrap_content" />

    <LinearLayout android:layout_width="fill_parent"
        android:layout_height="wrap_content" android:orientation="horizontal">

        <TextView android:id="@+id/textView1" android:text="Gravity"
            android:layout_width="wrap_content" android:layout_height="wrap_content"
            android:layout_weight="50" android:gravity="center" />
        <TextView android:id="@+id/textView2" android:layout_height="wrap_content"
            android:layout_width="wrap_content" android:text="Style"
            android:layout_weight="50" android:gravity="center" />

    </LinearLayout>


    <LinearLayout android:layout_width="fill_parent"
        android:layout_height="wrap_content" android:orientation="horizontal">
        <RadioGroup android:id="@+id/rgGrav" android:orientation="vertical"
            android:layout_width="fill_parent" android:layout_height="wrap_content"
            android:layout_weight="50">


            <RadioButton android:text="Left" android:id="@+id/rbLeft"
                android:layout_width="fill_parent" android:layout_height="wrap_content" />
            <RadioButton android:text="Centre" android:id="@+id/rbCentre"
                android:layout_width="fill_parent" android:layout_height="wrap_content" />
            <RadioButton android:text="Right" android:id="@+id/rbRight"
                android:layout_width="fill_parent" android:layout_height="wrap_content" />
        </RadioGroup>

        <RadioGroup android:orientation="vertical"
            android:layout_width="fill_parent" android:layout_height="wrap_content"
            android:layout_weight="50">

            <RadioButton android:text="Normal" android:id="@+id/rbNormal"
                android:layout_width="wrap_content" android:layout_height="wrap_content" />
            <RadioButton android:text="Bold" android:id="@+id/rbBold"
                android:layout_width="wrap_content" android:layout_height="wrap_content" />
            <RadioButton android:text="Italics" android:id="@+id/rbItalics"
                android:layout_width="wrap_content" android:layout_height="wrap_content" />
        </RadioGroup>
    </LinearLayout>

    <TextView android:textSize="20dp" android:text="Enter some text and click"
        android:id="@+id/tvGetInput" android:layout_width="fill_parent"
        android:layout_height="wrap_content" android:gravity="center" />
    <Button android:layout_height="wrap_content" android:text="Ok" android:id="@+id/btnOK" android:layout_width="fill_parent"></Button>



</LinearLayout>

logcat copypasta (в первый раз я не думаю, что я делаю это правильно)

10-23 20:45:09.716: ERROR/AndroidRuntime(2951): FATAL EXCEPTION: main
10-23 20:45:09.716: ERROR/AndroidRuntime(2951): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.b00517566.helloworldplus/com.b00517566.helloworldplus.RadioBtnsTab}: java.lang.NullPointerException
10-23 20:45:09.716: ERROR/AndroidRuntime(2951):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663)
10-23 20:45:09.716: ERROR/AndroidRuntime(2951):     at android.app.ActivityThread.startActivityNow(ActivityThread.java:2503)
10-23 20:45:09.716: ERROR/AndroidRuntime(2951):     at android.app.LocalActivityManager.moveToState(LocalActivityManager.java:127)
10-23 20:45:09.716: ERROR/AndroidRuntime(2951):     at android.app.LocalActivityManager.startActivity(LocalActivityManager.java:339)
10-23 20:45:09.716: ERROR/AndroidRuntime(2951):     at android.widget.TabHost$IntentContentStrategy.getContentView(TabHost.java:651)
10-23 20:45:09.716: ERROR/AndroidRuntime(2951):     at android.widget.TabHost.setCurrentTab(TabHost.java:323)
10-23 20:45:09.716: ERROR/AndroidRuntime(2951):     at android.widget.TabHost$2.onTabSelectionChanged(TabHost.java:129)
10-23 20:45:09.716: ERROR/AndroidRuntime(2951):     at android.widget.TabWidget$TabClickListener.onClick(TabWidget.java:453)
10-23 20:45:09.716: ERROR/AndroidRuntime(2951):     at android.view.View.performClick(View.java:2408)
10-23 20:45:09.716: ERROR/AndroidRuntime(2951):     at android.view.View$PerformClick.run(View.java:8816)
10-23 20:45:09.716: ERROR/AndroidRuntime(2951):     at android.os.Handler.handleCallback(Handler.java:587)
10-23 20:45:09.716: ERROR/AndroidRuntime(2951):     at android.os.Handler.dispatchMessage(Handler.java:92)
10-23 20:45:09.716: ERROR/AndroidRuntime(2951):     at android.os.Looper.loop(Looper.java:123)
10-23 20:45:09.716: ERROR/AndroidRuntime(2951):     at android.app.ActivityThread.main(ActivityThread.java:4627)
10-23 20:45:09.716: ERROR/AndroidRuntime(2951):     at java.lang.reflect.Method.invokeNative(Native Method)
10-23 20:45:09.716: ERROR/AndroidRuntime(2951):     at java.lang.reflect.Method.invoke(Method.java:521)
10-23 20:45:09.716: ERROR/AndroidRuntime(2951):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
10-23 20:45:09.716: ERROR/AndroidRuntime(2951):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
10-23 20:45:09.716: ERROR/AndroidRuntime(2951):     at dalvik.system.NativeStart.main(Native Method)
10-23 20:45:09.716: ERROR/AndroidRuntime(2951): Caused by: java.lang.NullPointerException
10-23 20:45:09.716: ERROR/AndroidRuntime(2951):     at com.b00517566.helloworldplus.RadioBtnsTab.onCreate(RadioBtnsTab.java:24)
10-23 20:45:09.716: ERROR/AndroidRuntime(2951):     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
10-23 20:45:09.716: ERROR/AndroidRuntime(2951):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
10-23 20:45:09.716: ERROR/AndroidRuntime(2951):     ... 18 more

редактировать 3

public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        gravOne = (RadioGroup) findViewById(R.id.rgGrav);
        gravOne.setOnCheckedChangeListener(this);

        // textview = new TextView(this);
        //textview.setText("This is the Radio Buttons tab");
        //setContentView(textview);

        setContentView(R.layout.radiobtns_tab);

        textOutput = (TextView) findViewById(R.id.tvGetInput);
        getInput = (EditText) findViewById(R.id.etInput);

        Button ok =(Button) findViewById(R.id.btnOK);
        ok.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View arg0) {
                // TODO Auto-generated method stub
                textOutput.setText(getInput.getText());
            }
        });



    }

строка 24 gravOne.setOnCheckedChangeListener(this);

1 Ответ

3 голосов
/ 24 октября 2011

Кажется, ваш XML-файл нормально скомпилирован. Не беспокойтесь об этом предупреждении, оно безвредно и известная проблема . Не могли бы вы опубликовать вывод logcat, когда закроете силу?

Хорошо, часть трассировки стека, которая говорит Caused by: java.lang.NullPointerException, указывает вам, куда вам нужно смотреть. Можете ли вы опубликовать метод onCreate вашего класса RadioBtnsTab, а также строку 24 самостоятельно? Вот в чем проблема.

Проблема в том, что вы никогда не звоните setContentView(R.layout.yourTabLayout). Вот почему gravOne является нулевым. Попробуйте настроить просмотр содержимого и посмотрите, работает ли он.

...