2015-04-13 99 views
0

我有一个活动,其上有按钮。当我点击按钮时,按钮的文字会改变。我正在添加一个分享菜单,以与其他应用程序分享按钮的新值。每当我尝试访问onCreateOptionsMenu中按钮的文本值,我都会得到原始值而不是新值。在活动中获取布局元素

如何访问新值?

+0

'首先调用onCreate方法,然后调用onCreateOptionsMenu。'基本上你得到的是原始值,因为在调用onCreateOptionsMenu时,值还没有改变。尝试在更改值后调用invalidateOptionsMenu();'这将导致onCreateOptionsMenu被再次调用。 –

回答

1

onCreateOptionsMenu()在菜单第一次创建时调用。那时,按钮中的文字就是原文。因此,每次单击按钮并更改文字时,应该拨打invalidateOptionsMenu();See this