Search in sources :

Example 1 with SystemUiHider

use of cn.edu.cqupt.nmid.headline.ui.activity.util.SystemUiHider in project nmid-headline by miao1007.

the class PhotoViewActivity method onCreate.

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_photo_view);
    ButterKnife.inject(this);
    Intent intent = getIntent();
    image_full = intent.getStringExtra(IMAGE_SIEZ_FULL);
    image_previous = intent.getStringExtra(IMAGE_SIEZ_PREVIOUS);
    Picasso.with(this).load(image_full).into(mIvPhotoView);
    // Set up an instance of SystemUiHider to control the system UI for
    // this activity.
    mSystemUiHider = SystemUiHider.getInstance(this, mFullscreenContentControls, HIDER_FLAGS);
    mSystemUiHider.setup();
    mSystemUiHider.setOnVisibilityChangeListener(new SystemUiHider.OnVisibilityChangeListener() {

        // Cached values.
        int mControlsHeight;

        int mShortAnimTime;

        @Override
        @TargetApi(Build.VERSION_CODES.HONEYCOMB_MR2)
        public void onVisibilityChange(boolean visible) {
            if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB_MR2) {
                // screen.
                if (mControlsHeight == 0) {
                    mControlsHeight = mFullscreenContentControls.getHeight();
                }
                if (mShortAnimTime == 0) {
                    mShortAnimTime = getResources().getInteger(android.R.integer.config_shortAnimTime);
                }
                mFullscreenContentControls.animate().translationY(visible ? 0 : mControlsHeight).setDuration(mShortAnimTime);
            } else {
                // If the ViewPropertyAnimator APIs aren't
                // available, simply show or hide the in-layout UI
                // controls.
                mFullscreenContentControls.setVisibility(visible ? View.VISIBLE : View.GONE);
            }
            if (visible && AUTO_HIDE) {
                // Schedule a hide().
                delayedHide(AUTO_HIDE_DELAY_MILLIS);
            }
        }
    });
    // Set up the user interaction to manually show or hide the system UI.
    mFullscreenContentControls.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View view) {
            if (TOGGLE_ON_CLICK) {
                mSystemUiHider.toggle();
            } else {
                mSystemUiHider.show();
            }
        }
    });
    // Upon interacting with UI controls, delay any scheduled hide()
    // operations to prevent the jarring behavior of controls going away
    // while interacting with the UI.
    findViewById(R.id.dummy_button).setOnTouchListener(mDelayHideTouchListener);
}
Also used : SystemUiHider(cn.edu.cqupt.nmid.headline.ui.activity.util.SystemUiHider) Intent(android.content.Intent) TargetApi(android.annotation.TargetApi) InjectView(butterknife.InjectView) PhotoView(uk.co.senab.photoview.PhotoView) View(android.view.View)

Aggregations

TargetApi (android.annotation.TargetApi)1 Intent (android.content.Intent)1 View (android.view.View)1 InjectView (butterknife.InjectView)1 SystemUiHider (cn.edu.cqupt.nmid.headline.ui.activity.util.SystemUiHider)1 PhotoView (uk.co.senab.photoview.PhotoView)1