我是Java和Android的新手,我目前正在尝试更新TextView
之外的Fragment
。
// Update Location after processing location info
Activity activity = (Activity) mContext;
TextView textView = (TextView) activity.findViewById(R.id.location) ;
String updatedLocation = cityName+" - "+cityLatitude + " " + cityLongitude;
textView.setText(updatedLocation);
但是这不起作用且TextView
不会更新。更新textview
onCreateView()
内部工作正常,但我每次对数据库进行查询时都会尝试动态更改内容。
我尝试在fragment
中创建一个方法,但它没有成功,因为该方法必须是static
而getActivity()
不是static
方法。
还有其他解决方法吗?
答案 0 :(得分:0)
在片段内部制作此功能
public void updatecount(int counter){
count = counter;
textView.setText(String.valueOf(count));
}
通过启动片段的对象
从不同的活动中调用它 LeftSliderFragment fragment = (LeftSliderFragment) getSupportFragmentManager()
.findFragmentById(R.id.menu_frame);
fragment.updatecount(1);
答案 1 :(得分:0)
在color.xml中输入你喜欢的颜色
<color name="mytextColor">#B49228</color>
并使用android:textColor="@color/mytextColor"
答案 2 :(得分:0)
在片段中创建一个函数,例如updateText(..)。使用getFragmentManager:
ExampleFragment fragment = (ExampleFragment) getFragmentManager().findFragmentById(R.id.example_fragment);
fragment.updateText(text);