2016-04-01 59 views
0

我试图从资源文件动态获取XML数组,但是我不断收到Exception Number错误。动态创建资源编号android

public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { 
      View rootView = inflater.inflate(R.layout.fragment_class, container, false); 
      TextView classTitle = (TextView) rootView.findViewById(R.id.class_title); 
      classTitle.setText(getString(R.string.section_format, getArguments().getInt(ARG_SECTION_NUMBER))); 

      //FETCH THE XML ARRAY 
      String[] classAvgArray = getResources().getStringArray(R.array.classAvg); 
      //INDEX OF THE ARRAY 
      int key = getArguments().getInt(ARG_SECTION_NUMBER); 

      //DISPLAY THE AVG AMOUNT 
      TextView classTextAverage = (TextView) rootView.findViewById(R.id.classAvgAmount); 
      classTextAverage.setText("Avg: "+classAvgArray[key]); 

      //FETCH THE XML ARRAY FOR ITEMS 
      String ID = "c"+key; 

      int resID = getResources().getIdentifier(ID, "R.array.c"+key, "za.co.infomycito.mycitoapp"); 

      String[] classactivities = getResources().getStringArray(resID); 

回答

1

,我认为你应该做这样的

int resID = getResources().getIdentifier("c"+key, "array", getPackageName()); 

的东西,如果你想获得的资源ID R.array.c<key>

+0

感谢您的帮助! – user2552828