Articles of 工具栏

在android上设置多个工具栏的菜单

在我的活动中,我使用以下代码作为我的两个工具栏。 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // Creating The Toolbar and setting it as the Toolbar for the activity toolbar = (Toolbar) findViewById(R.id.tool_bar); setSupportActionBar(toolbar); getSupportActionBar().setTitle(“My title”); toolbar2 = (Toolbar) findViewById(R.id.tool_bar_bottom); setSupportActionBar(toolbar2); … } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it […]

Android支持工具栏+ ActionBarDrawerToggle不更改为箭头

我正在努力工作的工具栏和抽屉。 我正在尝试将汉堡切换为箭头,当我向后台堆叠添加新片段时却无法做到这一点。 也许我错过了一些东西,但我找不到办法。 有人有同样的问题吗? 这是声明: mDrawerToggle = new ActionBarDrawerToggle( getActivityCompat(), /* host Activity */ mDrawerLayout, /* DrawerLayout object */ ((BaseActivity) getActivityCompat()).getToolbar(), R.string.navigation_drawer_open, /* “open drawer” description for accessibility */ R.string.navigation_drawer_close /* “close drawer” description for accessibility */ ) 这是我将一个片段添加到后栈时调用的函数 public void setToggleState(boolean isEnabled) { if (mDrawerLayout == null) return; if (isEnabled) { mDrawerLayout.setDrawerLockMode(DrawerLayout.LOCK_MODE_UNLOCKED); mDrawerToggle.onDrawerStateChanged(DrawerLayout.LOCK_MODE_UNLOCKED); } […]

半透明/透明状态栏+ CoordinatorLayout +工具栏+片段

我有以下设置: 我正在使用AppCompat MainActivity,包含一个片段并有一个工具栏,在向下滚动时隐藏 Fragment与RecyclerView 所有适合屏幕的视图都在xml布局中具有相应的android:fitsSystemWindows=”true” 问题是,在这种情况下我无法使状态栏透明。 我所做的是: 创建活动并调用setContent 然后我尝试调整活动以编程方式获得如下的半透明工具栏: @TargetApi(Build.VERSION_CODES.LOLLIPOP) public void themeNavAndStatusBar(Activity activity) { if (Build.VERSION.SDK_INT < Build.VERSION_CODES.LOLLIPOP) return; Window w = activity.getWindow(); w.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS); w.setFlags( WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION, WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION); w.setFlags( WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS, WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS); w.setNavigationBarColor(activity.getResources().getColor(android.R.color.transparent)); w.setStatusBarColor(activity.getResources().getColor(android.R.color.transparent)); } 用片段替换活动( @+id/frame_container )中的占位符 在这种情况下,状态栏是纯色的,并且未在其下方绘制视图…为什么? 我想要的是 我想要一个工具栏,它滚动屏幕并完全隐藏,而此工具栏下面的内容应该适合屏幕,并在透明导航栏后面绘制。 布局 这是我的主要活动: 这是我的片段,将放在主要活动中: 编辑 – 截图 我使用浅色/深色基本主题并手工制作主题(因为用户可以选择任何颜色作为主要/强调颜色),所以不要介意工具栏是白色的(它是默认的主题背景颜色和原色)。 我还添加了一个黑色边框,以便您看到活动结束的地方…… 第一个屏幕截图:显示工具栏,没有滚动任何内容 第二个屏幕截图:我刚刚开始滚动=>工具栏现在应该滚动 第三个屏幕截图:主要内容现在应滚动到导航栏下方… 最后,我当然会让工具栏和导航栏半透明,以获得更好的视觉效果……

滚动选项卡中的片段时隐藏/显示工具栏

我在我的Android应用程序中添加了新的Toolbar , Tablayout和Viewpager 。 我为我的3个标签提供了碎片,并且工作正常。 但问题是,当我向上滚动我的工具栏时,不会隐藏。 我希望当我滚动我的片段时它应该隐藏。 还有一件事,我在片段中使用Webview。 我的代码如下。 MainActivity.Java public class MainActivity extends AppCompatActivity { TabLayout tabLayout; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); setupToolbar(); setupTablayout(); } private void setupToolbar() { // TODO Auto-generated method stub Toolbar toolbar = (Toolbar) findViewById(R.id.toolbarsdfs); if (toolbar != null) { setSupportActionBar(toolbar); getSupportActionBar().setDisplayHomeAsUpEnabled(true);} } private void setupTablayout() { […]

如何删除Android工具栏的左边距?

我正在尝试将工具栏用于我的项目。 这是我正在使用的代码: 我想删除左边距,这里我设置android:contentInsetLeft =“0dp”和android:contentInsetStart =“0dp”但它不起作用..请帮帮我!

android标题不会显示在工具栏中

我有一个xml,我使用片段文件这么多活动,但我的问题是我无法在工具栏中显示我想要的文本,我使用那个xml,因为我有一个导航抽屉,我需要处理一些事情所以我不得不这样做。 我的xml: 我的一项活动: public class GroupChatActivity extends ActionBarActivity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_base_layout); Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); setSupportActionBar(toolbar); getSupportActionBar().setDisplayShowHomeEnabled(true); ActionBar actionBar = getSupportActionBar(); actionBar.setTitle(“Groups history”); Aniways.init(this); if(savedInstanceState == null) { FragmentManager manager = getSupportFragmentManager(); Fragment fragment = GroupChatFragment.newInstance(getIntent().getIntExtra(“uid”, 0)); manager.beginTransaction().add(R.id.frame_container, fragment).commit(); } } } 正如你所看到的,我尝试将标题设置为操作栏,但它不起作用。

当RecyclerView适合屏幕时,不要折叠工具栏

我使用Android Design Library创建了一个应用程序,带有工具栏和TabLayout。 实际上有2个选项卡,都有2个RecyclerView,滚动时会自动折叠工具栏。 我的问题是:当RecyclerView具有少量项目并且完全适合屏幕时(如在TAB 2中),我可以禁用工具栏折叠吗? 我见过很多像CheeseSquare这样的例子,由Google员工制作,问题仍然存在:即使RecyclerView只有1个项目,工具栏也会隐藏在滚动上。 我想我可以找出是否在屏幕上显示RecyclerView的第一项,如果是,则禁用工具栏折叠。 前者易于实现,后者又如何呢? 这是我的布局:

如何捕捉导航图标从片段中单击工具栏?

我有一个对话框片段,其中我有布局工具栏。 我想在工具栏中使用后退按钮(导航图标)并在单击时退出片段。 但我无法在(对话框)片段中捕获工具栏导航图标上的单击事件。 以下是我获取工具栏的方法: toolbar = (Toolbar) rootView.findViewById(R.id.toolbar); toolbar.setNavigationIcon(R.drawable.abc_ic_ab_back_mtrl_am_alpha); toolbar.setTitle(itemType); ((AppCompatActivity)getActivity()).setSupportActionBar(toolbar); 这是对话框片段的布局文件: **这是迄今为止尝试但失败的** 选项项目在ID R.id.home中单击 @Override public boolean onOptionsItemSelected(MenuItem item) { int id = item.getItemId(); switch (id){ case android.R.id.home: finish(); break; } return super.onOptionsItemSelected(item); } 工具栏上的setNavigationOnClick(): toolbar.setNavigationOnClickListener(new View.OnClickListener(){ @Override public void onClick(View view) { Toast.makeText(getActivity(), “Back clicked!”, Toast.LENGTH_SHORT).show(); } });