如何解决使用Android中的导航功能共享应用
我正在尝试从菜单栏中共享应用程序,但是导航部分显示了共享意图背后的布局。
我真的想要与mainActivity相同,在这种情况下,用户单击菜单(共享应用程序)并使用导航进行shareIt();
函数调用。
这是我的导航部分:
这是片段。
public class ShareAppFragment extends Fragment {
public static ShareAppFragment newInstance(String param1,String param2) {
ShareAppFragment fragment = new ShareAppFragment();
return fragment;
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// share_it();
}
@Override
public View onCreateView(LayoutInflater inflater,ViewGroup container,Bundle savedInstanceState) {
// Inflate the layout for this fragment
View v = inflater.inflate(R.layout.fragment_share_app,container,false);
share_it();
return v;
}
private void share_it() {
Intent sharingIntent = new Intent(android.content.Intent.ACTION_SEND);
sharingIntent.setType("text/plain");
String shareBody = Constant.SHARE_IT_MSG;
// sharingIntent.putExtra(android.content.Intent.EXTRA_SUBJECT,CONSTANT.SHARE_IT_MSG);
sharingIntent.putExtra(android.content.Intent.EXTRA_TEXT,shareBody);
startActivity(Intent.createChooser(sharingIntent,"Share via"));
}
}
<fragment
android:id="@+id/nav_share_app"
android:name="a3.bolto.bolto.ui.main.view.nav.ShareAppFragment"
android:label="@string/share_the_app"
tools:layout="@layout/fragment_share_app" >
<action
android:id="@+id/action_nav_home_to_privacy_policy"
app:destination="@id/share_appFragment"
app:enterAnim="@anim/fragment_open_enter"
app:exitAnim="@anim/fragment_close_exit" />
</fragment>
解决方法
如果您正在使用导航,请实施 “ NavigationView.OnNavigationItemSelectedListener”和
在ONcreate中:执行此操作:
NavigationView navigationView = findViewById(R.id.nav_view);
navigationView.setNavigationItemSelectedListener(this);
覆盖它,就像这样
@Override
public boolean onNavigationItemSelected ( @NonNull MenuItem item) {
// Handle navigation view item clicks here.
int id = item.getItemId() ;
if (id == R.id.nav_share_app ) {
share_app();
} else if (id == R.id.nav_logout ) {
finish();
}
DrawerLayout drawer = findViewById(R.id. drawer_layout ) ;
drawer.closeDrawer(GravityCompat. START ) ;
return true;
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。