Я хочу использовать SlidingDrawer
в своем приложении. Но я должен скрыть handle
и показать 20% содержимого, чтобы они были видны, когда SlidingDrawer
закрыто. Также я хочу назначить все скольжение (касание или перетаскивание)действия с handle
по content
. Пожалуйста, помогите мне, если у кого-то есть какое-то решение для этого.
Пожалуйста, обратитесь к следующему фрагменту кода, который я пробовал.
<View
android:id="@id/handle"
android:layout_width="0dip"
android:layout_height="fill_parent" />
<LinearLayout
android:id="@id/content"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/sliding_drawer" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/sliding_drawer" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/sliding_drawer" />
</LinearLayout>
и вот моя активность:
import android.app.Activity;
import android.graphics.Color;
import android.os.Bundle;
import android.view.View;
import android.widget.SlidingDrawer;
import android.widget.SlidingDrawer.OnDrawerCloseListener;
import android.widget.SlidingDrawer.OnDrawerOpenListener;
public class SlidingDrawerActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
final SlidingDrawer drawer = (SlidingDrawer) findViewById(R.id.drawer);
drawer.setOnDrawerCloseListener(new OnDrawerCloseListener() {
public void onDrawerClosed() {
// TODO Auto-generated method stub
drawer.setBackgroundColor(Color.BLACK);
}
});
drawer.setOnDrawerOpenListener(new OnDrawerOpenListener() {
public void onDrawerOpened() {
// TODO Auto-generated method stub
drawer.setBackgroundColor(Color.BLUE);
}
});
View content = drawer.getContent();
content.setClickable(true);
content.setTouchDelegate(drawer.getHandle().getTouchDelegate());
}
}
Здесь я могу скрыть handle
, установив width=0dip
, но не знаю, как показать 20% контента, когда SlidingDrawer
закрыт, и установить действия на Content
SlidingDrawer
.
Я попытался получить touchDelegate
дескриптора и установить его на Content
, но это не сработало. Пожалуйста, помогите мне решить эту проблему.