我使用菜单抽屉有更多的Fragments.在某些Fragments我有菜单项REFRESH但在一些片段我想隐藏这个菜单项(我不想显示菜单,但我不想隐藏ActionBar).
我尝试添加覆盖onCreateOptionsMenu()到Fragment我不想显示此菜单项但我无法让它工作.我尝试了许多方式在代码中看到注释行.有什么问题在哪里?当我onPrepareOptionsMenu()在MainActivity中调用时激活菜单抽屉时,最后这个菜单项会隐藏,但是当我进入时我需要这样做Fragment.
Fragment 我想要隐藏菜单项REFRESH:
public class FindPeopleFragment extends Fragment {
public FindPeopleFragment(){}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.fragment_find_people, container, false);
//setHasOptionsMenu(false);
return rootView;
}
private Menu menu=null;
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater)
{
inflater.inflate(R.menu.main, menu);
this.menu=menu;
menu.findItem(R.id.refresh).setVisible(false);
getActivity().invalidateOptionsMenu();
//setHasOptionsMenu(false);
super.onCreateOptionsMenu(menu,inflater);
}
}
Run Code Online (Sandbox Code Playgroud)
MainActivity在哪里定义MENU DRAWER:
//Slide menu item click listener
private class SlideMenuClickListener implements
ListView.OnItemClickListener {
@Override …Run Code Online (Sandbox Code Playgroud) 我想请求帮助.我想要打印/创建pdf文档.我可以创建一个pdf页面并通过画布将数据写入此页面.问题是我不知道如何创建另一个pdf页面并继续写入第二页.如果有人有任何经验,我会非常乐于助人,我会花很多时间来做这件事.
我用这个:https://developer.android.com/reference/android/print/pdf/PrintedPdfDocument.html
我的部分代码在那里:
private void doPrint(int _docNumber){
docNumber = _docNumber;
//get Printmanager instance
PrintManager printManager = (PrintManager)this.getSystemService(Context.PRINT_SERVICE);
// Set job name, which will be displayed in the print queue
String jobName = getString(R.string.app_name) + " dokument";
// Start a print job, passing in a PrintDocumentAdapter implementation
// to handle the generation of a print document
printManager.print(jobName, new MyPrintDocAdapter(), null);
Toast.makeText(getBaseContext(), "Príprava na tla?...", Toast.LENGTH_SHORT).show();
}
public class MyPrintDocAdapter extends PrintDocumentAdapter
{
Context context;
private int pageHeight;
private …Run Code Online (Sandbox Code Playgroud) 嗨我使用下面的代码将对象转换为字节数组现在我需要将此字节数组转换回对象.有没有人知道如何在Windows 8应用程序中反序列化?我找到一些代码,但使用Serialize和BinaryReader类,这些类不在Windows 8中或不知道它.
Person ps = new Person();
ps.name = "Lucy";
DataContractSerializer serializer = new DataContractSerializer(typeof(List<Dictionary<String, String>>));
byte[] byteArr;
using (var ms = new MemoryStream())
{
serializer.WriteObject(ms, ps.name);
byteArr = ms.ToArray();
}
tbByteResult.Text = byteArr.ToString();
Run Code Online (Sandbox Code Playgroud) c# bytearray windows-phone-7 deserialization windows-store-apps
嗨,我是新的Android,我想要求帮助.我正在android studio中创建新项目,我使用带有viewpager的导航操作栏选项卡.Android studio生成此代码.我知道使用一个活动atc,但现在我想学习带有选项卡的滑动布局.我的问题是:是否可以在此内部使用不同的项目进行更多布局?例如,现在我在每个片段上都有一个textview,当我滑动时,我会在每个页面上看到任何文本.但我需要在页面(tab1)布局上使用textview,在tab2上我需要布局edittext,在tab3上我需要布局与图像.这有可能吗?因为我可以更改文本,但现在我对所有选项卡都有相同的布局.
public class MainActivity extends ActionBarActivity implements ActionBar.TabListener {
SectionsPagerAdapter mSectionsPagerAdapter;
ViewPager mViewPager;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final ActionBar actionBar = getSupportActionBar();
actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
mSectionsPagerAdapter = new SectionsPagerAdapter(getSupportFragmentManager());
mViewPager = (ViewPager) findViewById(R.id.pager);
mViewPager.setAdapter(mSectionsPagerAdapter);
mViewPager.setOnPageChangeListener(new ViewPager.SimpleOnPageChangeListener() {
@Override
public void onPageSelected(int position) {
actionBar.setSelectedNavigationItem(position);
}
});
for (int i = 0; i < mSectionsPagerAdapter.getCount(); i++) {
actionBar.addTab(
actionBar.newTab()
.setText(mSectionsPagerAdapter.getPageTitle(i))
.setTabListener(this));
}
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
@Override
public boolean …Run Code Online (Sandbox Code Playgroud) 嗨,我在Android中有一个小应用程序,我使用片段与导航抽屉菜单.但是现在我想在我的片段对话框弹出窗口中显示当用户点击某些东西时,我得到这些错误:
主要活动:
private void displayView(int position) {
// update the main content by replacing fragments
Fragment fragment = null;
switch (position) {
case 0:
fragment = new HomeFragment();
break;
case 1:
fragment = new FindPeopleFragment();
break;
default:
break;
}
if (fragment != null) {
FragmentManager fragmentManager = getFragmentManager();
fragmentManager.beginTransaction()
.replace(R.id.frame_container, fragment).commit();
// update selected item and title, then close the drawer
mDrawerList.setItemChecked(position, true);
mDrawerList.setSelection(position);
setTitle(navMenuTitles[position]);
mDrawerLayout.closeDrawer(mDrawerList);
} else {
// error in creating fragment
Log.e("MainActivity", "Error in creating fragment");
} …Run Code Online (Sandbox Code Playgroud) android incomplete-type android-fragments android-dialogfragment