آموزش های این وب سایت به صورت رایگان در دسترس است. اطلاعات بیشتر
بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]

چجوری میشه کاری کرد که اسلایدینگ پنل از راست ب چب باز بشه نه از چپ به راست

سعید  11 سال پیش  11 سال پیش
0 0

سلام.

چجوری میشه کاری کرد که اسلایدینگ پنل از راست ب چب باز بشه نه از چپ به راست؟

 
<android.support.v4.widget.SlidingPaneLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/SlidingPanel"
android:layout_width="match_parent"
android:layout_height="match_parent" >

<include layout="@layout/menu" />

<ListView
android:id="@+id/list"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >

<!-- Preview: listitem=@layout/adapter_application -->
</ListView>

</android.support.v4.widget.SlidingPaneLayout>
+2 0
فکر کنم این لینک بهتون کمک کنه لینک (11 سال پیش)
 برای این سوال 1 پاسخ وجود دارد.
پاسخ به سوال 
MRJ  11 سال پیش
+3 0

وی پوشه menu یه سری فایل xml مربوط به منو و دکمه های اکشن بار هست. فایل xml مربوط به صفحه مورد نظرت رو باز کن و این کدها رو توش بنویس :

     
    <item
        android:id="@+id/action_menu"
        android:orderInCategory="100"
        myapp:showAsAction="always"
        android:title="منو"
        android:icon="@drawable/ic_drawer"/>
</menu>

id توی برنامه شما فرق می کنه و همون رو بزار و icon هم که از اسمش معلومه. اگه همین آیکن رو می خوای که سه تا خط هست این رو سرچ کن : Android_Design_Icons
قاعدتا کد زیر هم باید تو کلاس اکتیویتیت باشه ولی اگه نیست کپی کن ولی بیرون از onCreate . این R.menu.menu هم آدرس فایلی هست که کد بالایی رو توش نوشتی :

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.menu, menu);
    return true;
}

تا اینجا یه دکمه به سمت راست اکشن بار اضافه شده.
کد زیر هم توی اکتیوی بزار تا آیکن سمت چپ حذف بشه :

getSupportActionBar().setDisplayShowHomeEnabled(fa  lse);

حالا drawerLayout و listView ای که توی فایل xml اکتیویتیت وارد کردی رو توی کلاس اکتیویتی معرفی می کنی :

 

بیرون از onCreate//
 
ListView listMenu;
    DrawerLayout drawerLayout;
 
توی onCreate//
 
        drawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout);
        listMenu = (ListView) findViewById(R.id.drawer_list);

الان باید تعیین کنی که زمان کلیک روی دکمه لیست ویو بیاد داخل. متد زیر هم خارج onCreate بزار :

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    // TODO Auto-generated method stub
    //return super.onOptionsItemSelected(item);
 
    switch (item.getItemId()) {
     
    case R.id.action_menu:
        if(drawerLayout.isDrawerOpen(listMenu)){
            drawerLayout.closeDrawer(Gravity.RIGHT);
        }else{
            drawerLayout.openDrawer(listMenu);
        } 
      break;
    }
    return true;
}

پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .