나는 RecyclerView 안에 뷰가있는 CardView를 가지고 있습니다. 애셋이 뷰에 첨부되고 모든 것이 작동하는 어댑터를 만들었습니다. 이제, 나는이 활동들을 나의 활동에서 바꾸고 싶다. 그렇게하는 것이 간단한 방법일까요?활동에서 CardView 내의 뷰에 대한 참조를 얻는 방법은 무엇입니까?
public class MainActivity extends AppCompatActivity {
RecyclerView recyclerView;
private RecyclerView.LayoutManager layoutManager;
private List<Offer>offers;
TextView timer; //timer inside CardView
private void getViewReferences() {
recyclerView = (RecyclerView)findViewById(R.id.mainRecyclerView);
timer = (TextView)findViewById(R.id.timer);
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
getViewReferences();
layoutManager = new LinearLayoutManager(this);
recyclerView.setLayoutManager(layoutManager);
initializeData();
initializeAdapter();
timer.setText("13:16"); //NullPointerException here
}
private void initializeData(){
offers = new ArrayList<>();
offers.add(new Offer("godzina", R.drawable.zdj, 200));
offers.add(new Offer("godzina", R.drawable.zdj));
}
private void initializeAdapter() {
RecyclerViewAdapter adapter = new RecyclerViewAdapter(offers);
recyclerView.setAdapter(adapter);
}
}
보기가 어떤 변화를 의미하는지 예를 들려 줄 수 있습니까? – masp
initializeData()의 @masp 기본 문자열 "godzina"가 초기화되고 initializeAdapter()에서 TextView가이 값을 가져 오는 어댑터로 보내고 있습니다. 이 작업이 끝나면 Activity에서 TextView의 텍스트를 변경하고 싶습니다. 예 : "godzina"-> "string". –