TechTorch

Location:HOME > Technology > content

Technology

How to Enable Full Screen Video and Photo in a WebView Android Application

June 13, 2025Technology4270
How to Enable Full Screen Video and Photo in a WebView Android Applica

How to Enable Full Screen Video and Photo in a WebView Android Application

Enhancing the user experience in an Android application is crucial, and one way to achieve this is by allowing users to view videos and photos in full screen mode within a WebView. This can be accomplished through a two-activity approach, enabling a seamless and immersive experience for your users. In this article, we will guide you through the process of implementing this feature.

Step 1: Setting Up the Half-Screen Activity

The first step is to set up a half-screen activity that will display a video or photo view with a smaller size. This activity will act as the starting point for the user's interaction. Here's how you can implement this:

Open your Android studio project and create a new activity named HalfScreenActivity. In this activity, add a WebView for displaying the content. Set the layout file for this activity, for example, activity_half_screen.xml. Here is an example layout for activity_half_screen.xml:
?xml version"1.0" encoding"utf-8"?
LinearLayout xmlns:android""
    android:layout_width"match_parent"
    android:layout_height"match_parent"
    android:orientation"vertical">
    WebView
        android:id"@ id/webView"
        android:layout_width"match_parent"
        android:layout_height"0dp"
        android:layout_weight"1" /
    Button
        android:id"@ id/btnFullScreen"
        android:layout_width"wrap_content"
        android:layout_height"wrap_content"
        android:layout_gravity"center_horizontal"
        android:text"Full Screen" /
/LinearLayout

Next, you need to handle the button click to start the full-screen activity.

In the HalfScreenActivity class, override the onClick() method for the button. Create an instance of the full-screen activity and start it.
!-- Inside  --
public class HalfScreenActivity extends AppCompatActivity {
    private WebView webView;
    private static final int REQUEST_CODE_FULLSCREEN  123;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(_half_screen);
        webView  findViewById();
        Button btnFullScreen  findViewById();
        (new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent  new Intent(, );
                startActivityForResult(intent, REQUEST_CODE_FULLSCREEN);
            }
        });
    }
}

Step 2: Creating the Full-Screen Activity

The full-screen activity will show the media content in its full glory, filling the entire screen of the device. Follow these steps to create the full-screen activity:

Create a new activity named FullScreenActivity. Add a layout file for this activity, for example, activity_full_screen.xml. Here's an example layout for activity_full_screen.xml:
?xml version"1.0" encoding"utf-8"?
FrameLayout xmlns:android""
    android:layout_width"match_parent"
    android:layout_height"match_parent">
    WebView
        android:id"@ id/webFullScreen"
        android:layout_width"match_parent"
        android:layout_height"match_parent" /
/FrameLayout

In the FullScreenActivity class, handle the back button to go back to the half-screen activity.

public class FullScreenActivity extends AppCompatActivity {
    private WebView webFullScreen;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(_full_screen);
        webFullScreen  findViewById();
    }
    @Override
    public void onBackPressed() {
        Intent resultIntent  new Intent();
        resultIntent.putExtra("PRODUCT", (). diálogo);
        setResult(_OK, resultIntent);
        finish();
    }
}

In the HalfScreenActivity class, handle the result from the FullScreenActivity and close it.

Intent resultIntent  new Intent(, );
resultIntent.putExtra("PRODUCT", "FULL_SCREEN_VIDEO");
startActivity(resultIntent);

Step 3: Enhancing the Full Screen Experience

To make the full screen experience even richer, you can consider the following enhancements:

Implement a swipe gesture to enabled the user to switch between different videos or photos. Add a feature to pause and resume the video play in full screen mode. Use immersive mode to hide the status bar and navigation bar, providing a more immersive experience.
public class FullScreenActivity extends AppCompatActivity{
    private WebView webFullScreen;
    private boolean isFullscreen  false;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(_full_screen);
        webFullScreen  findViewById();
        if (_INT  _) {
            Window window  getWindow();
            ().setSystemUiVisibility(
                    _UI_FLAG_LAYOUT_STABLE
                            | _UI_FLAG_LAYOUT_HIDE_NAVIGATION
                            | _UI_FLAG_LAYOUT_FULLSCREEN
                            | _UI_FLAG_HIDE_NAVIGATION // hide nav bar
                            | _UI_FLAG_FULLSCREEN // hide status bar
                            | _UI_FLAG_IMMERSIVE_STICKY);
        }
    }
    @Override
    public void onWindowFocusChanged(boolean hasFocus) {
        super.onWindowFocusChanged(hasFocus);
        if (!isFullscreen) {
            (new WebViewClient());
            webFullScreen.loadUrl("YOUR_VIDEO_URL");
            isFullscreen  true;
            if (_INT  _) {
                Window window  getWindow();
                windowifdef hasFocus) {
                    ().setSystemUiVisibility(
                            _UI_FLAG_IMMERSIVE_STICKY
                                    | _UI_FLAG_LAYOUT_STABLE
                                    | _UI_FLAG_LAYOUT_HIDE_NAVIGATION
                                    | _UI_FLAG_LAYOUT_FULLSCREEN
                                    | _UI_FLAG_HIDE_NAVIGATION | _UI_FLAG_FULLSCREEN);
                } else {
                    // Your code here
                }
            }
        } else {
            if (_INT  _) {
                Window window  getWindow();
                (
                        _UI_FLAG_IMMERSIVE_STICKY | _UI_FLAG_HIDE_NAVIGATION);
                isFullscreen  false;
            }
        }
    }
}

Conclusion

By following the steps outlined in this article, you can enhance your Android application to offer users a seamless and immersive experience when viewing videos and photos. Enabling full-screen play in your WebView will make your app more engaging and user-friendly. Remember to test thoroughly to ensure that the feature works well across different devices and Android versions.

Keywords

WebView Full Screen, Video Full Screen Android, Photo Full Screen Android