got a problem with changing the text of a text view in a PopUp Window.
Simple Version of the code looks like this:
public class Activity extends Activity {
View popupView;
PopupWindow pw_info;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
this.requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.activity_menue);
// Layout components
tv_function = (TextView) findViewById(R.id.function);
tv_result = (TextView) findViewById(R.id.tv_result);
tv_total = (TextView) findViewById(R.id.tv_total_result);
});
@Override
protected void onStart(){
super.onStart();
pop_up();
}
// PopUp Window for start and end
private void pop_up(){
LayoutInflater layoutInflater = (LayoutInflater) getBaseContext().getSystemService(LAYOUT_INFLATER_SERVICE);
popupView = layoutInflater.inflate(R.layout.popup_window, null);
final PopupWindow pw_popupWindow = new PopupWindow(popupView, LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT);
popupView.post(new Runnable() {
public void run() {
pw_popupWindow.showAtLocation(popupView, Gravity.CENTER, 0, 0);
tv_function.setText("start");
tv_popup = (TextView) findViewById(R.id.tv_popup_text);
new CountDownTimer(3000, 1000) {
public void onTick(long l_millisUntilFinished) {
// Problem: accessing tv_popup creates NULLPOINTER Exception!
tv_popup.setText(String.valueOf(l_millisUntilFinished / 1000));
}
public void onFinish() {
pw_popupWindow.dismiss();
}
}.start();
}
});
}
I try to change the TextView with every tick of the countdown. My problem is that im not able to change the TextView during the CountDownTimer. This causes NullPointer Exception.
Im not really sure about when to define and initialise the tv_popup
TextView.
Anybody able to help?
Thanks!
as clearly Seen you are using textview in pop window with a layout
So You need to add the popupView
object when you are definifing its ID
tv_popup = (TextView) popupView.findViewById(R.id.tv_popup_text);
Try This