我在ArticleActivity(Activity)中有代码
尝试使用PostDetail(Fragment) findViewById(R.id.like).setOnClickListener(new ResultLikeListener(this,(TextView)findViewById(R.id.like),res));
请你能帮助我。
public class PostDetail extends Fragment{
private int mId;
TextView mTitle;
WebView mWebView;
// TextView mBody;
private Tracker tracker;
@Override
public void onCreate(final Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
}
}
.............
}
答案 0 :(得分:3)
你必须@overide
片段的OnCrateView方法来获取你的小部件的id,如textview或edittext,无论你想要什么。在oncreate视图中,您必须像设置setcontentview一样在活动中对布局进行膨胀,但是在片段中,您必须为布局视图充气。代码类似于:
public class PostDetail extends Fragment {
TextView mTitle;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = (ViewGroup) inflater.inflate(R.layout.YOUR_LAYOUT_VIEW, null);
mTitle= (TextView ) _view.findViewById(R.id.YOUR_TEXTVIEW_ID);
return view;
}
}
答案 1 :(得分:0)
你需要像这样使用它:
View rootView = inflater.inflate(R.layout.article_fragnment, this, false);
TextView txtView = rootView.findViewById(R.id.like).setOnClickListener( new ResultLikeListener( this,(TextView)findViewById(R.id.like), res ));
答案 2 :(得分:0)
您需要从onCreate函数获取片段的rootView。
rootView.findViewById(R.id.like).setOnClickListener( new ResultLikeListener( this,(TextView)findViewById(R.id.like), res ));