Mình muốn hỏi 1 tí về mô hình 3 lớp

tutanloc

New Member
28/9/16
19
1
3
27
mình có 1 class :

PHP:
public class Test extends MainActivity {
    TextView txtv;

    String a="sssss";
    View.OnClickListener abc=new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            txtv=(TextView)findViewById(R.id.textView1);
            txtv.setText("dasdasd");
        }
    };
}
mình muốn sử dụng abc trong MainActivity:
PHP:
public class MainActivity extends AppCompatActivity {
    TextView txv;
    Button btn;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Test t=new Test();
        txv=(TextView)findViewById(R.id.textView1);
        btn=(Button)findViewById(R.id.button1);
        btn.setOnClickListener(t.abc);


    }
}
nhưng bị lỗi khi bấm button.
Có ai biết lỗi này không ?
 

Ngô Bá Dũng

New Member
25/8/16
4
2
0
26
Lỗi này rất sơ đẳng bạn ạ. đấy là cái
Code:
txtv=(TextView)findViewById(R.id.textView1);
nó không có file xml nào để tìm cả. Bạn có thể đẩy một biến ngữ cảnh (Context) vào để thực hiện
Với lại việc bạn sử dụng
Code:
Test extends MainActivity
sau đấy lại gọi
Code:
Test t=new Test();
nó cứ vô lý sao ấy.

Bạn có thể tham khảo việc sử dụng LayoutInflater nhé (http://www.programcreek.com/java-api-examples/android.view.LayoutInflater).

Thân!
 
Sửa lần cuối:
  • Like
Reactions: tutanloc

tutanloc

New Member
28/9/16
19
1
3
27
Cảm ơn bạn đã góp ý và chỉ dẫn. Mình khá là ngáo ngơ về mô hình 3 lớp nên cứ mò mẫn mãi mà vẫn không nâng cao trình độ được. Cảm ơn vì sự nhiệt tình của bạn !