开发者

Calling Button from different view in Android

开发者 https://www.devze.com 2023-01-31 06:09 出处:网络
In my app I have 3 radiobuttons on top of the view. When i choose one the \'body\' underneath that changes to the XML-view i defined.

In my app I have 3 radiobuttons on top of the view. When i choose one the 'body' underneath that changes to the XML-view i defined.

(If you want more information + pics, I asked a question about this earlier: Dy开发者_StackOverflownamically change view inside view in Android)

Now i want to call and change the text of the buttons and edittext's from the different views.

When I do btnAutopech = (Button) findViewById(R.id.btnAutopech); it's gives an NullPointerException.

How can I do this?


Try this.......

LayoutInflater layoutInflater = (LayoutInflater) this.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
LinearLayout ll= new LinearLayout(context);
ll=(LinearLayout)layoutInflater.inflate(R.layout.gegevens_verzekeringen, ll);
btnAutopech = (Button) ll.findViewById(R.id.btnAutopech);

Thanks.........


Depends on how you solved the last question you linked to. If your inflating new views into the area you want to change then you won't be able to retreive a reference to them using finViewById. I.e. they don't actually exist.

When you re-display your view, within which you want to display text based, on your other views outcome, you would have to re-assign the text when you re-attach/display your view. You could then assign text from a member variable of the class, or perhaps from sharedPreferences or a contentProvider.

EIther way, this sort of all depends on how you've solved the issue of your original question and when you attach/remove your views.

To summerise:

It looks like your removing your other views when you visit other views, so store your data in a member variable that persists.

  • attach view A
  • got to view B
  • Click button or something in view B and update member variable used by view A
  • Go to view A (Removing view B and attaching view A)
  • set text on view A from member variable (updated as a result of clicking button in view B for example)
0

精彩评论

暂无评论...
验证码 换一张
取 消