【发布时间】:2017-06-15 01:45:08
【问题描述】:
查看所有可能的答案后,我找不到我的代码有什么问题。
我需要在 3 个片段上有一个 OnClickListener,其中一个由 mainActivity 加载。他们都没有工作。我已经在每个片段上实现了 OnClickListener。
这是我的代码:
RequestFragment1.java
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
view = inflater.inflate(R.layout.fragment_request1, container, false);
Button buttonRequest1 = (Button) view.findViewById(R.id.Request1Button);
buttonRequest1.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
String url = "https://www.google.ca/";
WebView httpRequestResult = (WebView) getActivity().findViewById(R.id.webViewResult);
httpRequestResult.getSettings().setJavaScriptEnabled(false);
httpRequestResult.loadUrl(url);
getActivity().setContentView(R.layout.requests_webview);
}
});
return view;
}
fragment_request1.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/relativeLayout1"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<Button
android:id="@+id/Request1Button"
android:layout_width="match_parent"
android:layout_height="90dp"
android:layout_centerVertical="true"
android:layout_centerHorizontal="true"
android:text="Requête 1" />
</RelativeLayout>
MainActivity.java
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.fragment_request1);
View currentView = findViewById(android.R.id.content);
//Implementation du TouchListener
currentView.setOnTouchListener(new SwipeListener(MainActivity.this) {
需要按Request1Button打开一个webview。
感谢您的宝贵时间!
【问题讨论】:
-
欢迎来到 Stack Overflow。为了帮助您,我们需要更多信息。你到底想让这个应用程序做什么?它现在在做什么?此外,如果您减少代码以直接关注您的问题,这将有所帮助。您可以创建一个新的 Android Studio 项目进行试验。让这个原型应用程序与单个侦听器一起工作。然后从那里开始工作。
-
附注还要记住,Java 要求所有代码都在类中。包含这些类声明可以让我们更好地了解代码的上下文,尤其是在 Android 开发中。
标签: java android android-studio android-fragments onclicklistener