java - 从 Fragment 外部更新 TextView

标签 java android android-fragments

我是 Java 和 Android 新手,目前正在尝试更新 Fragment 之外的 TextView

>
// 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 不会更新。更新 onCreateView() 内的 textview 工作正常,但我试图在每次对数据库进行查询时动态更改内容。

我尝试在所述fragment中创建一个方法,但没有成功,因为该方法必须是staticgetActivity() 不是一个静态方法。

还有其他解决方法吗?

最佳答案

在你的 fragment 中创建这个函数

public void updatecount(int counter){   
            count = counter;
            textView.setText(String.valueOf(count));
        }

并通过启动 fragment 的对象从不同的 Activity 中调用它

 LeftSliderFragment fragment = (LeftSliderFragment) getSupportFragmentManager()
                                    .findFragmentById(R.id.menu_frame);

   fragment.updatecount(1);

关于java - 从 Fragment 外部更新 TextView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25133695/

相关文章:

java线程在创建外部对象之前访问它

java - 使用maven(heroku)编译java7项目时出错

java - java字符串中`rtserver-id`变成`rtserver - id`

java - 多态性与策略模式

android - Gradle build for Android 中的 JUnit 测试结果在哪里?

android - 使用混淆器混淆后,CardView 阴影未出现在 Lollipop 中

Android NDK/JNI UnsatisfiedLinkError With .So library

java - 为 BacKstack 调用 getChildFragmentManager() 时出现非法状态异常

android - key android :target_state 的 fragment 不再存在

java - 如何创建新线程,Android Studio?