forked from D-clock/AndroidSystemUiTraining
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
对Translucent再次进行补充更新,完成NavigationView的探究
- Loading branch information
Showing
14 changed files
with
216 additions
and
41 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,40 @@ | ||
# 谈谈我眼中的 NavigationDrawer | ||
|
||
|
||
|
||
## DrawerLayout | ||
|
||
SlidingMenu 开源项目:https://github.com/jfeinstein10/SlidingMenu | ||
|
||
SlidingDrawer 在 API 17 上被deprecated了 | ||
|
||
介绍一些比较常用的API,有很多API用了没效果,咋回事????? | ||
|
||
默认的图标会变成灰色的。。 | ||
|
||
推荐第三方的库 https://github.com/mikepenz/MaterialDrawer | ||
|
||
参考文章: | ||
|
||
http://myihsan.farbox.com/post/use-navigation-view-to-make-navigation-drawer | ||
|
||
https://guides.codepath.com/android/Fragment-Navigation-Drawer | ||
|
||
http://developer.android.com/training/implementing-navigation/nav-drawer.html | ||
|
||
http://www.google.com/design/spec/patterns/navigation-drawer.html#navigation-drawer-content | ||
|
||
http://developer.android.com/reference/android/support/v4/widget/DrawerLayout.html | ||
|
||
http://developer.android.com/reference/android/support/design/widget/NavigationView.html | ||
|
||
左上角的动画效果:http://www.jianshu.com/p/3fe2acac0ddb | ||
|
||
|
||
使用 ScrimInsetsFrameLayout 来仿造实现网易的效果 | ||
|
||
## 需要注意的问题 | ||
|
||
DrawerLayout 在设置 android:layout_width="wrap_content" 的时候会闪退报错 | ||
|
||
需要引入最新的 库,引入 compile 'com.android.support:design:23.1.1' 正常 ,,,但是 compile 'com.android.support:design:23.1.0' 会报错 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
41 changes: 39 additions & 2 deletions
41
src/main/java/com/clock/systemui/ui/activity/navigation/SimpleNavigationDrawerActivity.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,21 +1,58 @@ | ||
package com.clock.systemui.ui.activity.navigation; | ||
|
||
import android.support.v7.app.AppCompatActivity; | ||
import android.content.Context; | ||
import android.os.Build; | ||
import android.os.Bundle; | ||
import android.support.design.widget.NavigationView; | ||
import android.support.v4.widget.DrawerLayout; | ||
import android.support.v7.app.ActionBar; | ||
import android.support.v7.app.AppCompatActivity; | ||
import android.view.LayoutInflater; | ||
import android.view.MenuItem; | ||
import android.view.View; | ||
import android.view.ViewGroup; | ||
import android.view.Window; | ||
import android.view.WindowManager; | ||
import android.widget.LinearLayout; | ||
import android.widget.Toast; | ||
|
||
import com.clock.systemui.R; | ||
import com.clock.systemui.ui.activity.base.BaseActivity; | ||
|
||
/** | ||
* Navigation Drawer Simple Demo Code | ||
* | ||
* @author clock | ||
* @since 2016-02-24 | ||
*/ | ||
public class SimpleNavigationDrawerActivity extends AppCompatActivity { | ||
public class SimpleNavigationDrawerActivity extends BaseActivity { | ||
|
||
private DrawerLayout mDrawer; | ||
private NavigationView mNavigationView; | ||
|
||
@Override | ||
protected void onCreate(Bundle savedInstanceState) { | ||
super.onCreate(savedInstanceState); | ||
setContentView(R.layout.activity_simple_navigation_drawer); | ||
|
||
mDrawer = (DrawerLayout) findViewById(R.id.drawer); | ||
|
||
mNavigationView = (NavigationView) findViewById(R.id.navigation_view); | ||
mNavigationView.setItemIconTintList(null);//设置菜单图标的颜色 | ||
mNavigationView.setNavigationItemSelectedListener(new NavigationView.OnNavigationItemSelectedListener() { | ||
@Override | ||
public boolean onNavigationItemSelected(MenuItem item) { | ||
int menuItemId = item.getItemId(); | ||
if (menuItemId == R.id.subitem_01) { | ||
Toast.makeText(SimpleNavigationDrawerActivity.this, "sub item 01", Toast.LENGTH_SHORT).show(); | ||
|
||
} else if (menuItemId == R.id.subitem_04) { | ||
Toast.makeText(SimpleNavigationDrawerActivity.this, "sub item 04", Toast.LENGTH_SHORT).show(); | ||
|
||
} | ||
mDrawer.closeDrawers(); | ||
return true; | ||
} | ||
}); | ||
} | ||
} |
35 changes: 21 additions & 14 deletions
35
src/main/res/layout/activity_simple_navigation_drawer.xml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,25 +1,32 @@ | ||
<?xml version="1.0" encoding="utf-8"?> | ||
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" | ||
<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android" | ||
xmlns:app="http://schemas.android.com/apk/res-auto" | ||
android:id="@+id/drawer" | ||
android:layout_width="match_parent" | ||
android:layout_height="match_parent"> | ||
android:layout_height="match_parent" | ||
android:background="@color/color_cd3e3a"> | ||
|
||
<android.support.v4.widget.DrawerLayout | ||
<LinearLayout | ||
android:layout_width="match_parent" | ||
android:layout_height="match_parent"> | ||
android:layout_height="match_parent" | ||
android:background="@color/color_cd3e3a" | ||
android:orientation="vertical"> | ||
|
||
<TextView | ||
android:layout_width="match_parent" | ||
android:layout_height="match_parent" | ||
android:gravity="center" | ||
android:text="NavigationDrawer" /> | ||
android:text="NavigationDrawerContent" | ||
android:textColor="@android:color/white" /> | ||
</LinearLayout> | ||
|
||
<android.support.design.widget.NavigationView | ||
android:id="@+id/nv_main_navigation" | ||
android:layout_width="wrap_content" | ||
android:layout_height="match_parent" | ||
android:layout_gravity="start" | ||
app:headerLayout="@layout/navigation_drawer_header" | ||
app:menu="@menu/navigation_drawer_menu" /> | ||
</android.support.v4.widget.DrawerLayout> | ||
</RelativeLayout> | ||
<android.support.design.widget.NavigationView | ||
android:id="@+id/navigation_view" | ||
android:layout_width="wrap_content" | ||
android:layout_height="match_parent" | ||
android:layout_gravity="start" | ||
android:fitsSystemWindows="true" | ||
app:headerLayout="@layout/navigation_drawer_header" | ||
app:menu="@menu/navigation_drawer_menu" /> | ||
|
||
</android.support.v4.widget.DrawerLayout> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
<?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="match_parent" | ||
android:background="@color/color_cd3e3a" | ||
android:orientation="vertical"> | ||
|
||
<TextView | ||
android:layout_width="match_parent" | ||
android:layout_height="match_parent" | ||
android:gravity="center" | ||
android:text="NavigationDrawerContent" | ||
android:textColor="@android:color/white" /> | ||
</LinearLayout> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,52 @@ | ||
<?xml version="1.0" encoding="utf-8"?> | ||
<menu xmlns:android="http://schemas.android.com/apk/res/android"> | ||
|
||
<group android:checkableBehavior="single"> | ||
<item | ||
android:id="@+id/item_green" | ||
android:icon="@mipmap/green" | ||
android:title="Green" /> | ||
<item | ||
android:id="@+id/item_blue" | ||
android:icon="@mipmap/blue" | ||
android:title="Blue" /> | ||
<item | ||
android:id="@+id/item_pink" | ||
android:icon="@mipmap/pink" | ||
android:title="Pink" /> | ||
</group> | ||
|
||
<item android:title="SubItems"> | ||
<menu> | ||
<item | ||
android:id="@+id/subitem_01" | ||
android:icon="@mipmap/ic_launcher" | ||
android:title="SubItem01" /> | ||
<item | ||
android:id="@+id/subitem_02" | ||
android:icon="@mipmap/ic_launcher" | ||
android:title="SubItem02" /> | ||
<item | ||
android:id="@+id/subitem_03" | ||
android:icon="@mipmap/ic_launcher" | ||
android:title="SubItem03" /> | ||
</menu> | ||
</item> | ||
|
||
<item android:title="SubItems"> | ||
<menu> | ||
<item | ||
android:id="@+id/subitem_04" | ||
android:icon="@mipmap/ic_launcher" | ||
android:title="SubItem04" /> | ||
<item | ||
android:id="@+id/subitem_05" | ||
android:icon="@mipmap/ic_launcher" | ||
android:title="SubItem05" /> | ||
<item | ||
android:id="@+id/subitem_06" | ||
android:icon="@mipmap/ic_launcher" | ||
android:title="SubItem06" /> | ||
</menu> | ||
</item> | ||
</menu> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters