选项卡+滑动视图 - 无法从片段中的文本文件加载数据

时间:2013-01-10 12:11:55

标签: android tabs fragment swipe

这里,TabView是添加此特定片段的类。 搜索是MainActivity,它从用户获取文件名。 assets文件夹中有一些文本文件。当用户输入名称时,例如hello, 它连接到hello.txt并作为变量存储在Search活动中。我使用return func获取此值。 所以,这里出现了主要问题。当我尝试从hello.txt获取数据时, 当应用到这个部分时,应用程序突然关闭..我到处搜索!找不到!请帮助..

    public class fg1 extends Fragment {

        LinearLayout layout;
        private String file;
        private Search obj;
        private Context mX;
        public View onCreateView(LayoutInflater inflater, ViewGroup container,
                Bundle savedInstanceState) {
            if (container == null) {
                return null;
            }


        layout = (LinearLayout)inflater.inflate(R.layout.fg_code, container, false);
        TextView snippet = (TextView)layout.findViewById(R.id.codeView);

        mX = TabView.getContext();
        AssetManager assetManager = mX.getAssets();
        file = obj.getFileName();
                InputStream input;
            try {
                 input = assetManager.open(file);

                 int size = input.available();
                 byte[] buffer = new byte[size];
                 input.read(buffer);
                 input.close();
                 // byte buffer into a string
                 String text = new String(buffer);
                 snippet.setText(text);

         } catch (IOException e) {
          // TODO Auto-generated catch block
          e.printStackTrace();
         }  
        return layout;
    }
}

1 个答案:

答案 0 :(得分:1)

自己找到答案。对于任何将来的参考, 而不是从活动中获取数据,而是从托管特定片段的父活动将数据传递给片段(片段的构造函数是可取的)并使用它。