在播放视频时显示右上角的“后退”按钮

时间:2014-05-27 12:12:01

标签: android menu

下面我完成了一个代码和使用菜单来创建后退按钮。

VideoFragment.java:

public class VideoFragment extends BaseFragment implements OnItemClickListener {

@Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {

        this.setHasOptionsMenu(true);

        return view;
    }

    @Override
    public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
        super.onCreateOptionsMenu(menu, inflater);
        menu.clear();
        inflater.inflate(R.menu.main_menu, menu);

    }
    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        switch (item.getItemId()) {
        case R.id.menuitem_back:
            getActivity().onBackPressed();
            break;
        default:
            break;
        }
        return true;

    }
}

YouTubePlayActivity.java:

public class YoutubePlayActivity extends YouTubeFailureRecoveryActivity{
    public static final String DEVELOPER_KEY = "key here";
    private String videoId;
    private YouTubePlayerView youTubeView;
    @Override
    protected void onCreate(Bundle arg0) {
        super.onCreate(arg0);

        setContentView(R.layout.youtube_play);
        Bundle bundle= getIntent().getExtras();
        videoId= bundle.getString("videoid");

        FrameLayout frameLayout=(FrameLayout) findViewById(R.id.youtube_view);
        youTubeView = new YouTubePlayerView(this);
        frameLayout.addView(youTubeView);
        youTubeView.initialize(DEVELOPER_KEY, this);

        ((TextView) findViewById(R.id.header_title)).setText(bundle.getString("title"));

        findViewById(R.id.blog_back).setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {
                onBackPressed();

            }
        });
    }


    @Override
      public void onInitializationSuccess(YouTubePlayer.Provider provider, YouTubePlayer player,
          boolean wasRestored) {
        if (!wasRestored) {
        try {
            if(videoId!=null){
                //2GPfZYwYZoQ
                player.cueVideo(videoId);
            }else{
                Toast.makeText(getApplicationContext(), "Not a Valid Youtube Video", Toast.LENGTH_SHORT).show();
            }
        } catch (Exception e) {
            Toast.makeText(getApplicationContext(), "Not a Valid Youtube Video", Toast.LENGTH_SHORT).show();
        }   

        }
      }

      @Override
      protected YouTubePlayer.Provider getYouTubePlayerProvider() {
        return youTubeView;
      }

}

在res / menu中:

main_menu.xml:

<menu xmlns:android="http://schemas.android.com/apk/res/android" >

    <item
        android:id="@+id/menuitem_back"
        android:showAsAction="always"
        android:title="@string/back">
    </item>

</menu>  

我在父亲家的右上角有一个后退按钮。

我遇到了问题,因为我必须get the back button at the top right corner while playing the video.

更多信息我只需点击并播放视频。现在back button wasn't displayed at the top right corner of the father house

2 个答案:

答案 0 :(得分:1)

您有两种提供后退按钮功能的方法。已经通过手机的后退按钮完成了一个。另一种方式甚至与ActionBar交互。为什么重新发明轮子?

我建议您阅读有关如何在您的应用中提供Up Navigation的文档。

答案 1 :(得分:0)

只需替换

super.onCreateOptionsMenu(menu, inflater);
menu.clear();
inflater.inflate(R.menu.main_menu, menu);

inflater.inflate(R.menu.main_menu, menu);
super.onCreateOptionsMenu(menu, inflater);

就是这样。它适合我...