互联网按钮 link 使应用程序崩溃
Button link to internet makes app crash
我设法制作了一个导航抽屉,现在正试图让一个按钮正常工作。
代码:
public class FourthFragment extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater,
ViewGroup container,
Bundle savedInstanceState) {
return inflater.inflate(R.layout.fourth_layout, container, false);
}
public void buttona1(View view){
Intent browserIntent = new Intent(Intent.ACTION_VIEW,
Uri.parse("https://www.google.nl"));
startActivity(browserIntent);
}
}
布局:
<Button
android:text="Magister"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="buttona1"
android:id="@+id/button2"
android:visibility="visible"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_alignParentTop="true"
android:layout_alignParentRight="true"
android:layout_alignParentEnd="true" />
问题是当我在手机上打开应用程序并移动到按钮页面时,按下按钮应用程序将关闭并停止工作。
您应该在您的 fragment contsructor
中初始化 Context
,它将在初始化 freagment
时从您的 MainActivity
传递并调用 context.startActivity(YOUR_INTENT);
希望这对你有帮助
您的代码似乎是正确的,但您需要在 activity 中创建方法 buttona1
和片段两者。
您不能从 xml 调用方法驻留在 Fragment 但不在 Activity
您可以在 onCreateView
方法中使用以下代码
View v=inflater.inflate(R.layout.fourth_layout, container, false);
Button myButton=(Button)v.findViewById(R.id.button2);
myButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
buttona1(view)
});
return v;
也替换这一行
startActivity(browserIntent);
和
getActivity().startActivity(browserIntent);
我设法制作了一个导航抽屉,现在正试图让一个按钮正常工作。
代码:
public class FourthFragment extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater,
ViewGroup container,
Bundle savedInstanceState) {
return inflater.inflate(R.layout.fourth_layout, container, false);
}
public void buttona1(View view){
Intent browserIntent = new Intent(Intent.ACTION_VIEW,
Uri.parse("https://www.google.nl"));
startActivity(browserIntent);
}
}
布局:
<Button
android:text="Magister"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="buttona1"
android:id="@+id/button2"
android:visibility="visible"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_alignParentTop="true"
android:layout_alignParentRight="true"
android:layout_alignParentEnd="true" />
问题是当我在手机上打开应用程序并移动到按钮页面时,按下按钮应用程序将关闭并停止工作。
您应该在您的 fragment contsructor
中初始化 Context
,它将在初始化 freagment
时从您的 MainActivity
传递并调用 context.startActivity(YOUR_INTENT);
希望这对你有帮助
您的代码似乎是正确的,但您需要在 activity 中创建方法 buttona1
和片段两者。
您不能从 xml 调用方法驻留在 Fragment 但不在 Activity
您可以在 onCreateView
方法中使用以下代码
View v=inflater.inflate(R.layout.fourth_layout, container, false);
Button myButton=(Button)v.findViewById(R.id.button2);
myButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
buttona1(view)
});
return v;
也替换这一行
startActivity(browserIntent);
和
getActivity().startActivity(browserIntent);