Ошибка надувания класса android.widget.SlidingDrawer

Я столкнулся с несколькими проблемами при использовании Slidingdrawer. Как это исправить.

Основной XML:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" 
    android:background="@color/white">
    <SlidingDrawer 
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical"
    android:background="@color/black"
    android:handle="@+id/handle"
    android:id="@+id/slideD">
    <Button 
        android:layout_width="60dp" 
        android:layout_height="60dp" 
        android:id="@id/handle" 
        android:background="@drawable/arrow_up"
        />
        <LinearLayout 
            android:layout_width="fill_parent"
            android:layout_height="wrap_content">
              <Button 
            android:layout_height="wrap_content"
            android:layout_width="wrap_content"
            android:background="@drawable/ic_launcher"
            >
          </Button>
          <Button 
            android:layout_height="wrap_content"
            android:layout_width="wrap_content"
            android:background="@drawable/ic_launcher"
            >
          </Button>     
        </LinearLayout>
    </SlidingDrawer>
</LinearLayout>

Деятельность

public class ATDTActivity extends Activity {

    SlidingDrawer slideD;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        slideD = (SlidingDrawer)findViewById(R.id.slideD);
        slideD.setOnDrawerOpenListener(new OnDrawerOpenListener(){
            @Override
            public void onDrawerOpened() {
            slideD.getHandle().setBackgroundResource(R.drawable.arrow_down);
            }
        });
        slideD.setOnDrawerCloseListener(new OnDrawerCloseListener(){
            @Override
            public void onDrawerClosed() {
            sideD.getHandle().setBackgroundResource(R.drawable.arrow_up);
                    }
        });
    }
}

Спасибо за помощь! Ваш пост не имеет большого контекста для объяснения разделов кода; пожалуйста, объясните ваш сценарий более четко.

2 ответа

Решение

Добавить контент в SlidingDrawer:

....
<SlidingDrawer
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        android:content="@+id/content"
        android:handle="@+id/handle"
        android:id="@+id/slideD">
 ........
 <LinearLayout
            android:id="@id/content"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content">

  ....... 

Даже не беспокойтесь об этом классе.

Этот класс устарел на уровне API 17.

Другие вопросы по тегам