更改另一个 class 的 webView 可见性
Change webView visibility from another class
所以我的主 class 中有一个 webview 元素,我想将其可见性更改为隐藏,
我只需要一个总数:
myWebView.setVisibility(View.GONE);
但我的问题是当我想从另一个class控制它时,我在网上搜索了很多都没有找到满意的答案,
这是我尝试过的:
MassegeNetsActivity.java: (主要activity)
fullScreenFu.openFullScreen(MassegeNetsActivity.this);
fullScreenFu.java:
import android.app.Activity;
import android.content.Context;
import android.net.ConnectivityManager;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.view.WindowManager;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.widget.ImageButton;
import android.widget.ProgressBar;
import android.widget.RelativeLayout;
public class videoFullScreen extends AppCompatActivity {
public void openFullScreen(Context c) {
WebView myWebView = (WebView) findViewById(R.id.webview);
myWebView.setVisibility(View.GONE);
}
}
但是我调用函数的时候没有任何反应,没有报错就是没有响应,继续显示webview。
当然这是一个与图像按钮或文本相关的问题,对我来说它是用 webview 出来的:)
非常感谢!
将您的 webview 创建为一个 class 变量并在您的 onCreate 方法中对其进行初始化,这样当您想要隐藏它时,您只需调用 class 变量而不是每次都通过 id 查找它
所以在使用@Wongani 之后,我能够做一些效果很好的事情,所以它应该是这样的:
第一步我们将在mainclass中将浏览器定义为class类型:
public static Webview myWebView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_one);
myWebView = (Webview) findViewById(R.id.myWebView);
}
二级:
我们现在可以从第二个 class 调用他,像这样:
MainActivity.myWebView.setVisibility(View.GONE);
非常简单:)
祝你好运!
所以我的主 class 中有一个 webview 元素,我想将其可见性更改为隐藏, 我只需要一个总数:
myWebView.setVisibility(View.GONE);
但我的问题是当我想从另一个class控制它时,我在网上搜索了很多都没有找到满意的答案, 这是我尝试过的:
MassegeNetsActivity.java: (主要activity)
fullScreenFu.openFullScreen(MassegeNetsActivity.this);
fullScreenFu.java:
import android.app.Activity;
import android.content.Context;
import android.net.ConnectivityManager;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.view.WindowManager;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.widget.ImageButton;
import android.widget.ProgressBar;
import android.widget.RelativeLayout;
public class videoFullScreen extends AppCompatActivity {
public void openFullScreen(Context c) {
WebView myWebView = (WebView) findViewById(R.id.webview);
myWebView.setVisibility(View.GONE);
}
}
但是我调用函数的时候没有任何反应,没有报错就是没有响应,继续显示webview。 当然这是一个与图像按钮或文本相关的问题,对我来说它是用 webview 出来的:)
非常感谢!
将您的 webview 创建为一个 class 变量并在您的 onCreate 方法中对其进行初始化,这样当您想要隐藏它时,您只需调用 class 变量而不是每次都通过 id 查找它
所以在使用@Wongani 之后,我能够做一些效果很好的事情,所以它应该是这样的:
第一步我们将在mainclass中将浏览器定义为class类型:
public static Webview myWebView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_one);
myWebView = (Webview) findViewById(R.id.myWebView);
}
二级: 我们现在可以从第二个 class 调用他,像这样:
MainActivity.myWebView.setVisibility(View.GONE);
非常简单:)
祝你好运!