gpt4 book ai didi

java - 如何从 fragment 本身更改 fragment 的 TextView ?

转载 作者:行者123 更新时间:2023-12-01 10:50:05 25 4
gpt4 key购买 nike

我有一个创建 3 个 fragment 的 MainActivity。进入第一个 fragment 后,我希望从此 fragment 中更改此 fragment 布局中的 Textview。当我尝试以这种方式访问​​ TextView 时,我看不到 IDE 中弹出的“findViewbyId”方法。有人可以帮我吗?这是我想要在名为“FragmentOne”中执行操作的 fragment 的代码。该代码适用于“FragmentOne.jav”

package com.iotaconcepts.aurum;
import android.app.Activity;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
import android.widget.Toast;

import com.iotaconcepts.aurum.R;

import java.io.*;
import java.util.*;


public class OneFrangment extends Fragment
{

@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
}

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
{
Fragment fc=getTargetFragment();
TextView tv=(TextView)fc.findViewById(R.id.textview);//NOT WORKING
try
{
BufferedReader br=new BufferedReader(new InputStreamReader(getActivity().getAssets().open("symp.txt")));
String parse1;
while((parse1=br.readLine())!=null)
{
Toast.makeText(getActivity(), parse1, Toast.LENGTH_LONG).show();
tv.setText(parse1 + "\n");
}
}
catch(Exception e)
{
tv.append("wtf\n");
Toast.makeText(getActivity(),"SORRY!", Toast.LENGTH_LONG).show();
}

// Inflate the layout for this fragment
return inflater.inflate(R.layout.fragment_one, container, false);
}
}


XML 代码:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="info.androidhive.materialtabs.fragments.OneFragment">
android:w
<TextView
android:id="@+id/textview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:text="Hello"
/>

最佳答案

您需要将 inflater.inflate 方法分配给 View,然后才能从中查找 View 。

View v = inflater.inflate(R.layout.fragment_one, container, false);
TextView tv=(TextView)v.findViewById(R.id.textview);
...
return v;

关于java - 如何从 fragment 本身更改 fragment 的 TextView ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33966873/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com