bu aktivitelerin onPostResume
bu aktivitelerin çocuk sınıflarında setContentView(R.layout.activity_method_two);
'dan sonra gerçekleşmesi. Ama ben her zaman java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.RadioButton.setChecked(boolean)' on a null object reference
olsunonPostReil soyut sınıfta null ContentGrup nesnesinde çocuk sınıfındaki inCreate oluşturulmasından sonra
Bunu neden yapamıyorum?
public class MethodTwo extends AbstractMethod {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_method_two);
}
@Override
void set_default_method() {
rb_default = (RadioButton) findViewById(R.id.radio_button_method_two);
}
}
ve
public abstract class AbstractMethod extends AppCompatActivity implements RadioGroup.OnCheckedChangeListener {
RadioGroup rg_method;
RadioButton rb_default;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
set_default_method();
}
@Override
protected void onPostResume() {
super.onPostResume();
rb_default.setChecked(true);
rg_method = (RadioGroup) findViewById(R.id.radio_group_method_select);
rg_method.setOnCheckedChangeListener(this);
}
yığın izleme bir hata üretir:
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.RadioButton.setChecked(boolean)' on a null object reference
(Sadece super.oncreate()
sonra) arka sınıfta onCreate içine setContentView
hareket durumunda, çalışır .. ama sonra çoklu çocuk sınıfları için soyut bir dersim yok.
eser olmalıdır bu
gibi soyut sınıfından
onCreate()
kimseyi arama R.layout.activity_method_two); 'soyut sınıfta olur? – newhouseSadece geri dönüyordum, hatırlatarak bu açıklamaya eklemeyi unuttum :) –
[Bu yanıt] (http://stackoverflow.com/a/29953146/1435985) olası bir çözümdür. "SetContentView" öğesini soyut sınıfa taşıyın ve uygulama sınıflarının düzen kimliğini sağlamak için bir yöntemi geçersiz kılın. –