0
當我在片段中填充文本視圖時,它在第一個片段中顯示正常。但是當我切換到另一個由另一個文本文件填充的片段時,它是空白的。當我從前一個片段視圖切換到時,片段視圖爲空
有人能幫我理解爲什麼這樣嗎?
這裏是我的第一個片段代碼:
import android.app.Fragment;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
public class ResourcesFragment extends Fragment {
public ResourcesFragment(){
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.fragment_resources, container, false);
TextView text = (TextView) rootView.findViewById(R.id.txtsource);
text.setText("your text!");
InputStream is = getResources().openRawResource(R.raw.resources);
BufferedReader br = new BufferedReader(new InputStreamReader(is));
String line;
String entireFile = "";
try {
while((line = br.readLine()) != null) { // <--------- place readLine() inside loop
entireFile += (line + "\n"); // <---------- add each line to entireFile
//is.close();
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
//TextView text = null;
//text.setText(entireFile); // <------- assign entireFile to TextView
//assert text != null;
if (text != null) {
text.setText(entireFile);
}
//return rootView;
return rootView;
}
}
我做的第二個片段同樣的事情,但使用不同的源文件:
import android.app.Fragment;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
public class TaweedFragment extends Fragment {
public TaweedFragment(){}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.fragment_tawheed, container, false);
TextView text = (TextView) rootView.findViewById(R.id.txttawheed);
//text.setText("your text!");
InputStream is = getResources().openRawResource(R.raw.tawheed);
BufferedReader br = new BufferedReader(new InputStreamReader(is));
String line;
String entireFile = "";
try {
while((line = br.readLine()) != null) { // <--------- place readLine() inside loop
entireFile += (line + "\n"); // <---------- add each line to entireFile
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
//TextView text = null;
//text.setText(entireFile); // <------- assign entireFile to TextView
//assert text != null;
if (text != null) {
text.setText(entireFile);
}
else {
text.setText("");
text.setText(entireFile);
}
//return rootView;
return rootView;
}
}
我在做什麼錯? ? 我試圖關閉流,但沒有奏效。
ironmantis7x