这篇文章主要围绕iphone–UINavigationItemtitleView的位置展开,旨在为您提供一份详细的参考资料。我们将全面介绍iphone–UINavigationItemtitleVie
这篇文章主要围绕iphone – UINavigationItem titleView的位置展开,旨在为您提供一份详细的参考资料。我们将全面介绍iphone – UINavigationItem titleView的位置,同时也会为您带来android – NavigationView OnNavigationItemSelectedListener未被调用、android – NavigationView setNavigationItemSelectedListener此API标记为支持库的内部,不应从应用程序访问、android.support.design.widget.BottomNavigationView.OnNavigationItemSelectedListener的实例源码、android.support.design.widget.NavigationView.OnNavigationItemSelectedListener的实例源码的实用方法。
本文目录一览:- iphone – UINavigationItem titleView的位置
- android – NavigationView OnNavigationItemSelectedListener未被调用
- android – NavigationView setNavigationItemSelectedListener此API标记为支持库的内部,不应从应用程序访问
- android.support.design.widget.BottomNavigationView.OnNavigationItemSelectedListener的实例源码
- android.support.design.widget.NavigationView.OnNavigationItemSelectedListener的实例源码
iphone – UINavigationItem titleView的位置
self.headerLabel = [[UILabel alloc] initWithFrame:CGRectMake(0.0,0.0,400.0,44.0)]; self.headerLabel.textAlignment = UITextAlignmentCenter; self.headerLabel.backgroundColor = [UIColor clearColor]; self.headerLabel.font = [UIFont boldSystemFontOfSize:20.0]; self.headerLabel.textColor = [UIColor colorWithRed:0.259 green:0.280 blue:0.312 alpha:1.0]; self.navigationItem.titleView = self.headerLabel;
在导航栏中,我还有一个左栏按钮.结果是这样的:
alt text http://cl.ly/41164eec656c96e7c913/content
正如你所看到的,文本没有正确的居中.我已经尝试设置标签的x原点,但这没有任何效果.
解决方法
你现在的方式,你没有这样的控制.我认为操作系统根据可用空间为您选择titleView的框架.
希望这可以帮助!
android – NavigationView OnNavigationItemSelectedListener未被调用
<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/drawer_header" app:menu="@menu/drawer_menu" /> <FrameLayout android:id="@+id/content_frame" android:layout_width="match_parent" android:layout_height="match_parent" />@H_301_2@活动onCreate()
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(getLayoutID()); toolbar = (Toolbar) findViewById(R.id.activity_toolbar); setSupportActionBar(toolbar); toolbar.inflateMenu(R.menu.common_menu); final ActionBar actionBar = getSupportActionBar(); if (actionBar != null) { actionBar.setHomeAsUpIndicator(R.drawable.ic_menu_white_24dp); actionBar.setdisplayHomeAsUpEnabled(true); } drawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout); navigationView = (NavigationView) findViewById(R.id.navigation_view); navigationView.setNavigationItemSelectedListener(new NavigationView.OnNavigationItemSelectedListener() { @Override public boolean onNavigationItemSelected(final MenuItem menuItem) { Snackbar.make(contentLayout,menuItem.getTitle() + " pressed",Snackbar.LENGTH_LONG).show(); menuItem.setChecked(true); // allow some time after closing the drawer before performing real navigation // so the user can see what is happening drawerLayout.closeDrawer(GravityCompat.START); mDrawerActionHandler.postDelayed(new Runnable() { @Override public void run() { navigate(menuItem.getItemId()); } },DRAWER_CLOSE_DELAY_MS); drawerLayout.closeDrawers(); return true; } }); usernameTextView = (TextView) findViewById(R.id.drawer_header_username); usernameTextView.setText(getAppDContext().getAccount().getUsername()); }
解决方法
<DrawerLayout> <FrameLayout /> <NavigationView /> </DrawerLayout>
android – NavigationView setNavigationItemSelectedListener此API标记为支持库的内部,不应从应用程序访问
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
/*Ini UI*/
mToolbar = (Toolbar) findViewById(t);
setupToolbar();
mNavigationRv = (RecyclerView) findViewById(R.id.navigation_rv);
mDrawerLayout = (DrawerLayout) findViewById(R.id.drawer);
mNavigationView = (NavigationView) findViewById(R.id.nv);
mNavigationRv.setLayoutManager(new linearlayoutmanager(this, linearlayoutmanager.HORIZONTAL, false));
mNavigationAdapter = new NavigationAdapter(new ArrayList<String>(), this, this);
mNavigationRv.setAdapter(mNavigationAdapter);
mActionBarDrawerToggle = new ActionBarDrawerToggle(this, mDrawerLayout, 0, 0);
mNavigationView.setNavigationItemSelectedListener(this);
getSupportActionBar().setdisplayHomeAsUpEnabled(true);
}
Android工作室给了我一个错误
“This API is marked as internal for the support library and should not
be accessed from apps”
for setNavigationItemSelectedListener和setCheckedItem.
请帮忙.
解决方法:
更新到支持库25.0.1后,此处相同.
这是一个警告,它适用于NavigationView的所有公共方法,但它很烦人,因为Android Studio将其标记为错误.
@SuppressWarnings(“RestrictedApi”)暂时解决它.
编辑
看起来这是Android Studio不支持库的问题.
使用AS 2.3 Canary 3我没有看到任何警告.
android.support.design.widget.BottomNavigationView.OnNavigationItemSelectedListener的实例源码
private void initViews() { // Bottom bar BottomNavigationView bottomNavigationView = findById(this,bottom_navigation_view); bottomNavigationView.setonNavigationItemSelectedListener(new OnNavigationItemSelectedListener() { @Override public boolean onNavigationItemSelected(@NonNull MenuItem item) { switch (item.getItemId()) { case R.id.tab_iss_location: contentViewPager.setCurrentItem(ISS_LOCATION_FRAGMENT_POSITION,false); break; case R.id.tab_people_in_space: contentViewPager.setCurrentItem(PEOPLE_IN_SPACE_FRAGMENT_POSITION,false); break; case R.id.tab_iss_pass_times: contentViewPager.setCurrentItem(ISS_PASS_TIMES_FRAGMENT_POSITION,false); break; } return true; } }); // ViewPager FragmentPagerAdapter mainPagerAdapter = new MainPagerAdapter(getSupportFragmentManager()); contentViewPager.setAdapter(mainPagerAdapter); }
android.support.design.widget.NavigationView.OnNavigationItemSelectedListener的实例源码
private void setupDrawerContent(NavigationView navigationView) { navigationView.setNavigationItemSelectedListener(new OnNavigationItemSelectedListener() { @Override public boolean onNavigationItemSelected(MenuItem menuItem) { menuItem.setChecked(true); mDrawerLayout.closeDrawers(); switch (menuItem.getItemId()) { case R.id.navItem1: Intent alarm = new Intent(AlarmClock.ACTION_SET_ALARM); startActivity(alarm); break; case R.id.navItem2: try { export(); } catch (IOException e) { e.printstacktrace(); } break; } return false; } }); }
@Nullable private OnNavigationItemSelectedListener getParent() { Activity activity = getActivity(); if (activity instanceof OnNavigationItemSelectedListener) { return (OnNavigationItemSelectedListener) activity; } return null; }
private void setupNavigationView(NavigationView view) { view.setNavigationItemSelectedListener(new OnNavigationItemSelectedListener() { @Override public boolean onNavigationItemSelected(MenuItem menuItem) { if (mCurrentNavItem == menuItem.getItemId()) { mDrawerLayout.closeDrawers(); return true; } switch (menuItem.getItemId()) { case R.id.drawer_menu_library: setFragment(new LibraryFragment()); break; case R.id.drawer_menu_browser: setFragment(new browserFragment()); break; case R.id.drawer_menu_about: setTitle(R.string.menu_about); setFragment(new AboutFragment()); break; } mCurrentNavItem = menuItem.getItemId(); menuItem.setChecked(true); mDrawerLayout.closeDrawers(); return true; } }); }
public void setNavigationItemSelectedListener(@Nullable OnNavigationItemSelectedListener listener) { navigationView.setNavigationItemSelectedListener(listener); }
@Override public View onCreateView(LayoutInflater inflater,ViewGroup container,Bundle savedInstanceState) { View view = inflater.inflate(R.layout.fragment_menu,container,false); //得到左侧的列表 NavigationView navigationView = (NavigationView) view.findViewById(R.id.vNavigation); //设置监听 navigationView.setNavigationItemSelectedListener(new OnNavigationItemSelectedListener() { @Override public boolean onNavigationItemSelected(MenuItem menuItem) { String title = (String) menuItem.getTitle(); //Toast.makeText(getActivity(),"您点击了 " + title,Toast.LENGTH_SHORT).show(); switch (title) { case "首页": Toast.makeText(getActivity(),"这已经是首页了,你再点试试看?",Toast.LENGTH_SHORT).show(); break; case "随手记": Intent intent1 = new Intent(getActivity(),MemoActivity.class); startActivity(intent1); MainActivity.handler.sendEmptyMessage(1);//通知关闭左侧栏 break; case "便签": Intent intent2 = new Intent(getActivity(),AtyList.class); startActivity(intent2); MainActivity.handler.sendEmptyMessage(1);//通知关闭左侧栏 break; case "天气": Intent intent4 = new Intent(getActivity(),WeatherActivity.class); startActivity(intent4); MainActivity.handler.sendEmptyMessage(1);//通知关闭左侧栏 break; case "关于": Toast.makeText(getActivity(),"这里没什么东西~",Toast.LENGTH_LONG).show(); MainActivity.handler.sendEmptyMessage(1);//通知关闭左侧栏 break; default: break; } return false; } }); return setupReveal(view) ; }
/** * Attach the fragment to hold the drawer and toolbar * * @param parent a Activity that extends AppCompatActivity & OnNavigationItemSelectedListener * @return {@link DrawerDelegate} */ public static <ParentActivity extends AppCompatActivity & OnNavigationItemSelectedListener> DrawerDelegate attach( @Nullable ParentActivity parent) { return attach(parent.getSupportFragmentManager()); }
今天关于iphone – UINavigationItem titleView的位置的分享就到这里,希望大家有所收获,若想了解更多关于android – NavigationView OnNavigationItemSelectedListener未被调用、android – NavigationView setNavigationItemSelectedListener此API标记为支持库的内部,不应从应用程序访问、android.support.design.widget.BottomNavigationView.OnNavigationItemSelectedListener的实例源码、android.support.design.widget.NavigationView.OnNavigationItemSelectedListener的实例源码等相关知识,可以在本站进行查询。
本文标签: