Articles of 导航

根据指南处理“向上”导航的正确方法

我完全同意下面的导航 想象一下Book的细节是在BookDetailActivity的不同实例中完成的。 在book2细节中按下之前的堆栈是: BookDetailActivity(Book 2 – 你在这里) BookDetailActivity(Book 1) AllBooksActivity 如果我按照指导方针,我将使用: Intent parentActivityIntent = new Intent(this, AllBooksActivity.class); parentActivityIntent.addFlags( Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK); startActivity(parentActivityIntent); finish(); 但是这个代码的大问题是BookDetailActivity(Book 1)仍然活着! 在“向上”之后按下返回button将带来书1的细节。 我怎样才能杀掉原来的AllBooksActivity和我按下的活动之间的所有BookDetailActivity ?

半透明导航栏(Android 4.4) – 显示下面的内容

有谁知道如何使半透明的导航栏(在4.4)重叠,并显示内容视图(在这种情况下,一个ListView)在它下面? 如果在这个屏幕截图中显示为透明(这是我目前为我的雇主开发的应用程序),但是如果列表在屏幕底部下方显示,那么导航栏下的列表项将被覆盖,不能被看见。 我想要做的一个例子就是Nexus 5上Google Edition Launcher的Google Now组件。导航栏是完全透明的,并显示TextViews及其下的所有内容,这是导航栏的唯一部分button本身的轮廓。

Android应用程序中的模块间(库项目)通信

在下面的图中,我有3个模块(作为Android库),它扩展了基本的“通用组件模块”,所有这3个模块将被添加到一个单一的Android应用程序。 所有3个模块都是独立的模块,但是作为一个应用程序来说,需要共享一些数据,启动其他模块,需要更多的相互通信。 那么谁能让我知道我们如何在这种架构中实现“数据共享层”和“导航控制器”? 例如:Module1-> Login,Module2-> Profile Management等,根据应用需要可以有n个模块。

获取错误膨胀类android.support.design.widget.NavigationView

我正在关注从devise支持库实现navigationView的教程,我不能摆脱下面的这个错误。 我已经阅读了本网站上发布的其他解决scheme,但没有一个为我工作,请帮助。 Caused by: android.view.InflateException: Binary XML file line #28: Error inflating class android.support.design.widget.NavigationView 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" android:layout_width="match_parent" android:layout_height="match_parent" android:fitsSystemWindows="true" tools:context=".MainActivity"> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <include android:id="@+id/tool_bar" layout="@layout/tool_bar" /> <FrameLayout android:id="@+id/frame" android:layout_width="match_parent" android:layout_height="match_parent"> </FrameLayout> </LinearLayout> <android.support.design.widget.NavigationView android:id="@+id/navigation_view" android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_gravity="start" app:headerLayout="@layout/header" app:menu="@menu/drawer" /> </android.support.v4.widget.DrawerLayout> MainActiviy.java import android.support.design.widget.NavigationView; import android.support.v4.widget.DrawerLayout; import android.support.v7.app.ActionBarDrawerToggle; import […]

如何导航到android的USB海量存储活动?

当设备连接到PC时,我想要获得USB Mass Storage活动来开启或closuresUSB模式。我已经实现了一个应用程序如下。 public class USB_ConnectActivity extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); final String state = Environment.getExternalStorageState(); ((Button)findViewById(R.id.onButton)).setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { if (!(Environment.MEDIA_SHARED.equals(state))) { //How to navigate android USB Mass Storage page } } }); ((Button)findViewById(R.id.offButton)).setOnClickListener(new […]

Android碎片导航和后台堆栈

我有一个标题栏(有点像菜单)和4个片段(MAIN,A,B,C),MAIN应该作为“主/根”片段供后台堆叠使用。 我遇到的问题是,当用户通过菜单例如MAIN> A> B> C。如果我只是使用backstack它将以相反的顺序,我不想要的。 不pipe用户如何导航到其中的一个,我需要返回button返回到MAIN。 我当前的代码(这是错误的,它不在MAIN,当前片段从其他非MAIN片段切换时退出应用程序)看起来像这样: private void SwitchFragment(Fragment pFragment) { FragmentTransaction ft = getSupportFragmentManager().beginTransaction(); ft.replace(R.id.main_fl_fragmentcontainer, pFragment); if (_CurrentFragment == _Frag_Main) ft.addToBackStack(null); ft.commit(); _CurrentFragment = pFragment; }

开始新的导航,而无需退出Google Map中的上一个导航

我从我的应用程序启动Google Map ,将用户导航到某个位置。 这是我的代码 。 Intent intent = new Intent(android.content.Intent.ACTION_VIEW, Uri.parse("google.navigation:q=" + rideDetailsModel.getEndLatitude() + "," + rideDetailsModel.getEndLongtitude())); startActivity(intent); 我正在使用聊天头像 Uber驱动程序的应用程序从Google地图返回到我的应用程序。 这工作正常。 问题是,当我调用上述相同的代码时,Google Map要求我退出前一个导航。 因为之前的导航没有被清除。 如何强制Google Map创build新的导航而不要求closures前一个。 两种方法可以解决我的问题。 方法1 如果我可以从我的应用程序closuresGoogle地图应用程序,我的问题解决了。 但是我search了很多,这个根深蒂固的手机不能杀死其他应用程序。 方法2 清除以前的导航并创build新的导航。 所以Google Map在开始新的导航之前不会要求用户退出上一个导航。

当不使用Android支持库时NavUtils的等价物?

这个问题也被Android Developers Google Group( 链接 )上的某个人问过,但是它没有答案… 我最近从Eclipse的Android项目中删除了v4支持库,因为我的应用程序只针对Android 4.0(冰淇淋三明治)。 我现在正在通过所有支持库引用给我错误。 其中之一就是NavUtils ,它似乎是活动导航中使用的支持库类。 例: @Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case android.R.id.home: NavUtils.navigateUpFromSameTask(this); return true; } return super.onOptionsItemSelected(item); } 什么是不使用支持库时NavUtils相当于什么?

android回到第一个屏幕

我有一个Android应用程序链接(通过linkify),导致我的应用程序的其他屏幕。 我想知道什么是最好的方法来closures所有的“孩子”活动,并回到最初发起的第一个活动。 换句话说就是这样的: HomeScreenActivity => Screen1(通过Linkify-link)=> Screen2 => Screen3 =>点击home =>(closures屏幕1,2和3)=> HomeScreenActivity

导航抽屉closures之前加载片段

我已经实现了一个导航抽屉,我想在导航抽屉closures之前加载我的片段。 目前,碎片加载与抽屉closures并行,所以如果碎片很重,用户界面会挂起一点点。 我有的代码是: private class DrawerItemClickListener implements ListView.OnItemClickListener { @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { FragmentTransaction ft = getSupportFragmentManager().beginTransaction(); ft.replace(R.id.content_frame, fragmentProfile); ft.commit(); drawerLayout.closeDrawer(drawerNaviListView); } } 我怎样才能改变这个,让我看到我的碎片加载(在后台)第一次,当它完成加载,导航抽屉closures?