我已經創建了一個應用程序。它工作的很好,但現在我想在主要活動中包含導航抽屜。我知道代碼模板,但爲此我需要創建新的活動。我的問題是將抽屜佈局包含到僅包含Recycler視圖和fab按鈕的現有活動中,如果可能包含?對於大問題抱歉。爲主要活動添加抽屜佈局
回答
你必須把下面的代碼在activity_main.xml中
<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent">
<FrameLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.design.widget.FloatingActionButton
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</FrameLayout>
<fragment
android:id="@+id/fragment_navigation_drawer"
android:name="com.example.FragmentDrawer"
android:layout_width="@dimen/nav_drawer_width"
android:layout_height="match_parent"
android:layout_gravity="start"
app:layout="@layout/fragment_navigation_drawer"
tools:layout="@layout/fragment_navigation_drawer" />
</android.support.v4.widget.DrawerLayout>
我無法將dbactivity擴展到AppCompatActivity。 –
請問您可以發佈您的代碼 – 2017-03-09 06:29:40
您可以添加NavigationDrawer一步一步按以下程序:
1)設置你的活動父佈局DrawerLayout :
<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
tools:openDrawer="start">
2)添加NavigationView在d的底部rawerLayout:
<android.support.design.widget.NavigationView
android:id="@+id/nav_view"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="start"
android:fitsSystemWindows="true"
app:headerLayout="@layout/nav_header_main"
app:menu="@menu/activity_main_drawer" />
</android.support.v4.widget.DrawerLayout>
3)稱爲activity_main_drawer.xml res文件夾下添加菜單文件夾中的XML文件菜單項:
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<group
android:id="@+id/top"
android:checkableBehavior="single">
<item
android:id="@+id/nav_camera"
android:icon="@drawable/ic_menu_camera"
android:title="Home" />
</group>
<group
android:id="@+id/middle"
android:checkableBehavior="single">
<item
android:id="@+id/nav_share"
android:icon="@drawable/ic_menu_share"
android:title="Directory" />
</group>
<group
android:id="@+id/bottom"
android:checkableBehavior="single">
<item
android:id="@+id/nav_send"
android:icon="@drawable/ic_menu_send"
android:title="About Us" />
</group>
</menu>
4)在活動實施NavigationView.OnNavigationItemSelectedListener:
public class YourActivity extends AppCompatActivity implements NavigationView.OnNavigationItemSelectedListener {
}
5)添加onNavigat ionItemSelected()方法來定義您選擇的導航項目上的操作。
@SuppressWarnings("StatementWithEmptyBody")
@Override
public boolean onNavigationItemSelected(MenuItem item) {
// Handle navigation view item clicks here.
int id = item.getItemId();
if (id == R.id.nav_camera) {
// Handle the camera action
} else if (id == R.id.nav_share) {
} else if (id == R.id.nav_send) {
}
DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
drawer.closeDrawer(GravityCompat.START);
return true;
}
6)配置DrawerLayout和活動的設置偵聽到您NavigationView中的onCreate():
DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
ActionBarDrawerToggle toggle = new ActionBarDrawerToggle(
this, drawer, toolbar, R.string.navigation_drawer_open, R.string.navigation_drawer_close);
drawer.setDrawerListener(toggle);
toggle.syncState();
NavigationView navigationView = (NavigationView) findViewById(R.id.nav_view);
navigationView.setNavigationItemSelectedListener(this);
7)添加到nav_header_main.xml佈局文件夾中;
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="@dimen/nav_header_height"
android:background="@drawable/side_nav_bar"
android:gravity="bottom"
android:orientation="vertical"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:theme="@style/ThemeOverlay.AppCompat.Dark">
<ImageView
android:id="@+id/imageView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingTop="@dimen/nav_header_vertical_spacing"
android:src="@android:drawable/sym_def_app_icon" />
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingTop="@dimen/nav_header_vertical_spacing"
android:text="Android Studio"
android:textAppearance="@style/TextAppearance.AppCompat.Body1" />
<TextView
android:id="@+id/textView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="[email protected]" />
</LinearLayout>
如果您要添加的工具欄,下面的代碼粘貼在裏面DrawerLayout頂部:
<android.support.design.widget.CoordinatorLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.design.widget.AppBarLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/AppTheme.AppBarOverlay">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
app:popupTheme="@style/AppTheme.PopupOverlay" />
</android.support.design.widget.AppBarLayout>
並關閉CoordinatorLayout的NavigationView前右:
</android.support.design.widget.CoordinatorLayout>
讓我知道怎麼運行的。
- 1. Android的抽屜佈局與主要活動
- 2. 安卓抽屜佈局啓動無抽屜的新活動
- 3. Android的滾動型不活動與抽屜佈局滾動
- 4. 在Android中爲現有地圖片段添加抽屜佈局
- 5. 打開第二個抽屜佈局作爲第一個子抽屜佈局
- 6. 主要佈局與導航抽屜重疊
- 7. 抽屜佈局和多窗格佈局
- 8. 抽屜佈局裏面的相對佈局:相對佈局參數不能被抽成抽屜佈局參數
- 9. 自定義抽屜佈局
- 10. 關閉佈局抽屜
- 11. 動態佈局上的Nevigation抽屜
- 12. Android佈局抽象活動
- 13. 主要和輔助抽屜的Android活動
- 14. 導航抽屜的主要活動內容
- 15. 添加一個TextView下面recyclerview抽屜佈局
- 16. 我可以在導航抽屜佈局添加圖像頭
- 17. 如何添加布局到導航抽屜?
- 18. 將滑動視圖添加到導航抽屜活動
- 19. 抽屜,片段和活動
- 20. 導航抽屜活動
- 21. Android - 抽屜佈局 - 關閉抽屜導致空指針異常
- 22. Android,與抽屜和谷歌地圖作爲片段的主要活動
- 23. 抽屜和抽屜面板中的主要內容塊顯示
- 24. 如何在所有活動中添加導航抽屜
- 25. Android |將導航抽屜添加到默認地圖活動
- 26. 如何使用ArrayAdapter添加項目到導航抽屜活動
- 27. 如何在導航抽屜活動中添加Google地圖?
- 28. 添加(開/關)按鈕活動(開/關)導航抽屜
- 29. 添加導航抽屜以空白活動
- 30. 在同一活動中使用抽屜佈局和滾動視圖
你可以擴展你的導航活動到你想使用的活動 – rookieDeveloper
我不能讓你的男人sorry.am完全新到android –
@Arun Basker,你試過我的解決方案嗎? – tahsinRupam