从活动的片段中的SetText到Textview [重复]

Posted

技术标签:

【中文标题】从活动的片段中的SetText到Textview [重复]【英文标题】:SetText to Textview in Fragment from Activity [duplicate] 【发布时间】:2019-08-15 08:46:26 【问题描述】:

我以前读过一些与此相关的问题,但没有一个我能理解。

我有文件:

Nutrisi.java
Nutrisifragmenta.java
activity_nutrisi.xml
activity_nutrisi_fragment_a.xml

这里是 Nutrisi.java 脚本

public class Nutrisi extends AppCompatActivity 

Nutrisitabadapter adapter_nutrisi;
TabLayout tab_nutrisi;
ViewPager view_nutrisi;
VideoView video_nutrisi;

@Override
protected void onCreate(Bundle savedInstanceState) 
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_nutrisi);

    tab_nutrisi = (TabLayout)findViewById(R.id.tab_nutrisi);
    view_nutrisi = (ViewPager)findViewById(R.id.view_nutrisi);
    video_nutrisi = (VideoView)findViewById(R.id.video_nutrisi);
    adapter_nutrisi = new Nutrisitabadapter(getSupportFragmentManager());

    adapter_nutrisi.addFragment(new Nutrisifragmenta(),"Nutrisi A");
    adapter_nutrisi.addFragment(new Nutrisib(),"Nutrisi B");

    view_nutrisi.setAdapter(adapter_nutrisi);
    tab_nutrisi.setupWithViewPager(view_nutrisi);



这里是我的 Nutrisifragmenta.java 脚本

public class Nutrisifragmenta extends Fragment 
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) 
    return inflater.inflate(R.layout.activity_nutrisi_fragment_a, container, false);


Nutrisifragmenta 有一个布局,这个布局,activity_nutrisi_fragment_a.xml

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout
    xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_
    android:layout_>
    <TextView
        android:layout_
        android:layout_
        android:text="something"
        android:id="@+id/txt_nutrisi_a"
        android:textSize="20sp"/>

</android.support.constraint.ConstraintLayout>

如何从 Nutrisi.java Activity 将文本设置为 txt_nutrisi_a (activity_nutrisi_fragment_a.xml)

【问题讨论】:

我猜,问题是要从ViewPager 获取片段并更新Fragment 的一些TextView。这就是你在说@Arif 吗? 是的。我已经完成了,我从多个来源找到了解决方案,包括这个link 并且我的问题解决了 【参考方案1】:

在 Nutrisi.java 中

TextView mNutrisi;

创建:

mNutrisi = findViewById(R.id.txt_nutrisi_a);
mNutrisi.setText("Your Text");

【讨论】:

以上是关于从活动的片段中的SetText到Textview [重复]的主要内容,如果未能解决你的问题,请参考以下文章

setText时的空指针异常 - TextView [复制]

从片段函数更改 TextView 的值

从 Fragment B 中的 Fragment A 访问视图

在其他方法 Android 中使用 Textview.setText

从RecyclerView适配器更新活动或片段的视图

使用绑定从片段访问父活动的 UI 元素