получение ClassCastException при создании объекта виджета SlidingTab - PullRequest
0 голосов
/ 10 апреля 2011

Я написал простое приложение для Android, в котором класс Activity реализует обратный вызов OnTriggerListener () для интерфейса SlidingTab. Я определил виджет SlidingTab в файле main.xml внутри папки макета. Код следует как

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

    <!-- (1) incomingCallWidget: the UI displayed while an incoming call is ringing. -->
    <com.android.internal.widget.SlidingTab
        android:id="@+id/incomingCallWidget"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:visibility="gone"
        android:layout_alignParentBottom="true"
        android:layout_marginBottom="80dip"
        />

</LinearLayout>

Код класса Activity следует как

public class Sliding extends Activity implements SlidingTab.OnTriggerListener{
    /** Called when the activity is first created. */

    private SlidingTab mIncomingCallWidget;
    private static final int IN_CALL_WIDGET_TRANSITION_TIME = 250; // in ms

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.incall_touch_ui);

        mIncomingCallWidget = (SlidingTab) findViewById(R.id.incomingCallWidget);
        mIncomingCallWidget.setLeftHintText(R.string.slide_to_divert_hint);
        mIncomingCallWidget.setRightHintText(R.string.slide_to_accept_hint);
        mIncomingCallWidget.setOnTriggerListener((OnTriggerListener) this);
    }

Теперь я получаю ClassCastException в строке

mIncomingCallWidget = (SlidingTab) findViewById(R.id.incomingCallWidget);

т.е. при создании экземпляра объекта.

Пожалуйста, позвольте мне предоставить полезную информацию, как я могу решить эту проблему.

1 Ответ

0 голосов
/ 10 апреля 2011

Ваш код ссылается на "R.layout.incall_touch_ui".Это приведет к тому, что Android будет искать в файле "res / layout / incall_touch_ui.xml", а не "res / layout / main.xml".

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...