从 TextView 复制的 OnClickListener
OnClickListener to copy from TextView
我正在开发一个 android 应用程序,我在其中使用了这段代码 - Link Here
代码使用支持库的片段运行良好:android.support.v4.app.Fragment
我在 third_frag.xml
中放置了一个按钮,按钮 ID buttonfg3
现在,当用户单击该按钮时,该片段上的文本应该被复制
我修改了ThirdFragment
public class ThirdFragment extends Fragment {
Button b1;
TextView ed1;
private ClipboardManager myClipboard;
private ClipData myClip;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
ed1=(TextView) container.findViewById(R.id.tvFragThird);
b1 = (Button) container.findViewById(R.id.buttonfg3);
myClipboard = (ClipboardManager) getActivity().getSystemService(Context.CLIPBOARD_SERVICE);
b1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String text;
text = ed1.getText().toString();
myClip = ClipData.newPlainText("text", text);
myClipboard.setPrimaryClip(myClip);
Toast.makeText(getActivity().getApplicationContext(), "Text Copied", Toast.LENGTH_SHORT).show();
}
});
View v = inflater.inflate(R.layout.first_frag, container, false);
TextView tv = (TextView) v.findViewById(R.id.tvFragFirst);
tv.setText(getArguments().getString("msg"));
return v;
}
public static FirstFragment newInstance(String text) {
FirstFragment f = new FirstFragment();
Bundle b = new Bundle();
b.putString("msg", text);
f.setArguments(b);
return f;
}
}
但是当我放置 setOnClickListener 代码时,应用程序停止工作..
您必须首先为片段扩充布局 xml 文件,然后您必须从该 xml 文件中找到按钮和编辑文本。
因此,将 View v = inflater.inflate(R.layout.first_frag, container, false);
行移到顶部,因为它成为 onCreateView
中的第一个语句
然后像这样找到 edittext 和按钮 :
ed1=(TextView) v.findViewById(R.id.tvFragFirst);
b1 = (Button) v.findViewById(R.id.buttonfg3);
我正在开发一个 android 应用程序,我在其中使用了这段代码 - Link Here
代码使用支持库的片段运行良好:android.support.v4.app.Fragment
我在 third_frag.xml
中放置了一个按钮,按钮 ID buttonfg3
现在,当用户单击该按钮时,该片段上的文本应该被复制
我修改了ThirdFragment
public class ThirdFragment extends Fragment {
Button b1;
TextView ed1;
private ClipboardManager myClipboard;
private ClipData myClip;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
ed1=(TextView) container.findViewById(R.id.tvFragThird);
b1 = (Button) container.findViewById(R.id.buttonfg3);
myClipboard = (ClipboardManager) getActivity().getSystemService(Context.CLIPBOARD_SERVICE);
b1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String text;
text = ed1.getText().toString();
myClip = ClipData.newPlainText("text", text);
myClipboard.setPrimaryClip(myClip);
Toast.makeText(getActivity().getApplicationContext(), "Text Copied", Toast.LENGTH_SHORT).show();
}
});
View v = inflater.inflate(R.layout.first_frag, container, false);
TextView tv = (TextView) v.findViewById(R.id.tvFragFirst);
tv.setText(getArguments().getString("msg"));
return v;
}
public static FirstFragment newInstance(String text) {
FirstFragment f = new FirstFragment();
Bundle b = new Bundle();
b.putString("msg", text);
f.setArguments(b);
return f;
}
}
但是当我放置 setOnClickListener 代码时,应用程序停止工作..
您必须首先为片段扩充布局 xml 文件,然后您必须从该 xml 文件中找到按钮和编辑文本。
因此,将 View v = inflater.inflate(R.layout.first_frag, container, false);
行移到顶部,因为它成为 onCreateView
然后像这样找到 edittext 和按钮 :
ed1=(TextView) v.findViewById(R.id.tvFragFirst);
b1 = (Button) v.findViewById(R.id.buttonfg3);