小编par*_*led的帖子

全屏时HTML 5视频崩溃

我目前正在开发一个带屏幕方向肖像的应用程序,我有需要全屏支持的html 5视频.我在webview中添加了一个WebChromeClient,它覆盖了一些方法.当我坚持纵向方向时,一切都工作得很好,但当我试图在全屏时将方向切换到风景时,我遇到了崩溃.任何线索?

覆盖方法:

public void onShowCustomView(View view, CustomViewCallback callback) {
    super.onShowCustomView(view, callback);
    if (mCustomViewContainer != null) {
        callback.onCustomViewHidden();
        return;
    }
    if(interfazWeb==null)
        interfazWeb = (FragTabActivity) getActivity();
        if (view instanceof FrameLayout) {
            mCustomViewContainer = (FrameLayout) view;
            mCustomViewCallback = callback;
            interfazWeb.getCustomContentView().setVisibility(View.INVISIBLE);
            interfazWeb.addContentView(mCustomViewContainer, new FrameLayout.LayoutParams(ViewGroup.LayoutParams.FILL_PARENT, ViewGroup.LayoutParams.FILL_PARENT, Gravity.CENTER));
            interfazWeb.setBackDelegate(new BackDelegate(){

                public boolean shouldOverrideBackButton() {
                    if(mCustomViewCallback!=null){//first calling onHideCustomView()
                        onHideCustomView();
                        return true;
                    }
                    return false;
                }

            });
            mCustomViewContainer.bringToFront();
            //interfazWeb.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
        }
    }

    @Override
    public void onHideCustomView() {
        // TODO Auto-generated method stub
            if(interfazWeb==null)
                interfazWeb = (FragTabActivity) getActivity();
            if(mCustomViewContainer!=null){ …
Run Code Online (Sandbox Code Playgroud)

android webview android-webview html5-video webchromeclient

9
推荐指数
1
解决办法
4120
查看次数

无法检索意图的附加功能

我有一个在多种模式下使用的活动,所以我必须做这样的事情:

    Intent i = new Intent(MainListActivity.this,MainActivity.class);
    extras.putInt("id", c.getId());
    extras.putInt("mode", AREA_MODE);
    i.putExtra("extras", extras);
    startActivity(i);
Run Code Online (Sandbox Code Playgroud)

并在onCreate

    Intent i = this.getIntent();
    extras = i.getBundleExtra("extras");
    if(extras!=null){
        id = extras.getInt("id", -1);
        mode = extras.getInt("mode", COUNTRY_MODE);
    }
Run Code Online (Sandbox Code Playgroud)

但是意图附加项始终为空。我错过了什么吗?有没有办法做到这一点?

编辑:出于某种原因,该getIntent()方法返回前一个Intent,在我的情况下没有额外的(主要意图)。我试图找出原因。

android

5
推荐指数
1
解决办法
5838
查看次数

Gallery.getChildAt(int position)的问题

我正在尝试在Gallery视图上创建预览效果并遇到Gallery.getChildAt(int position)的问题,它在大多数时间返回null.它应该仅在未显示子项时返回null,这不是这里的情况,因为用户需要滚动它.有没有办法解决这个问题,还是应该改变我的做法?这是我的代码:

gallery.setOnTouchListener(new OnTouchListener() {

        @Override
        public boolean onTouch(View view, MotionEvent event) {
            if(event.getAction()==MotionEvent.ACTION_UP){
                preview_container.setVisibility(View.GONE);
            }
            else if(event.getDownTime()>2500){
                int position = gallery.pointToPosition((int)event.getX(), (int)event.getY()); 
                if (position!=AdapterView.INVALID_POSITION){
                    View child = gallery.getChildAt(position);
                    if(child!=null){
                        Bitmap tmp_bitmap = book.imageForPreview(position);
                        previewImg.setImageBitmap(tmp_bitmap);
                        FrameLayout.LayoutParams layout = new FrameLayout.LayoutParams(tmp_bitmap.getWidth()+2, tmp_bitmap.getHeight()+2,Gravity.NO_GRAVITY);
                        int[] coord = new int[2];
                        child.getLocationOnScreen(coord);
                        int y = MMBookReader.this.getWindowManager().getDefaultDisplay().getHeight()-(tmp_bitmap.getHeight()+view.getHeight());
                        int x = (int) coord[0]-(tmp_bitmap.getWidth()-child.getWidth())/2;
                        layout.leftMargin=x;
                        layout.topMargin=y;
                        preview_container.setVisibility(View.VISIBLE);
                        preview_container.setLayoutParams(layout);
                        previewPageCount.setText(book.getMmpages().get(position).getPosition()+"/"+book.getPages());
                    }
                }
                else
                    preview_container.setVisibility(View.GONE);
            }
            return false;
        }
    });
Run Code Online (Sandbox Code Playgroud)

编辑:我不是要填充Gallery视图,我已经完成了这部分,并且非常了解Adapter类的使用.

编辑2:通过更改行解决:

View child = gallery.getChildAt(position);
Run Code Online (Sandbox Code Playgroud)

用:

View child = …
Run Code Online (Sandbox Code Playgroud)

android gallery preview effect touch-event

4
推荐指数
1
解决办法
2460
查看次数