2015-11-03 65 views
-5

我開發一個Android應用程序中,我使用這個代碼複製 - Link HereOnClickListener從TextView的

代碼工作好使用支持庫的片段: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代碼,應用程序停止工作..

+6

請不要讓人們去其他地方找你的代碼。而是在這裏複製那些不起作用的代碼部分。 – TooManyEduardos

回答

0

你必須首先對充氣佈局片段xml文件,然後你必須找到那個按鈕,EditText上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); 
+0

警告消息 - 已在此方法中查找R.id.tvFragFirst的ID – kshubham

+0

thx仍在工作.. – kshubham

相關問題