0

我是 Android 应用程序的新手,我想在资源文件夹中创建一个 plist 文件,我尝试创建 plist 文件,我花了 2 个小时,但我无法创建它,请帮助我。

谢谢

我试过了:

从资源中将新文件夹创建为“raw”,然后在 raw 中创建 xml 文件,但出现错误。

4

3 回答 3

1

Android 不使用 plist 文件,它们是 iOS/MacOS/OsX 的一个特性。

于 2012-07-24T15:01:34.183 回答
0

Android 项目架构不使用 plist,您有 AndroidManifest.xml 来自定义您的应用程序,或者如果您想要资源只需在 yourProject/res 上创建一个文件并使用它

于 2012-07-24T15:39:13.837 回答
-1

我使用以下示例......来自来源:http: //solutionforandroid.blogspot.com.br/2013/05/how-to-parse-plist-in-android-and-how.html

public class ProductsPlistParsing {   
Context context;

   // constructor for  to get the context object from where you are using this plist parsing
    public ProductsPlistParsing(Context ctx) {

        context = ctx;
    }

    public List<HashMap<String, String>> getProductsPlistValues() {

       // specifying the  your plist file.And Xml ResourceParser is an event type parser for more details Read android source
        XmlResourceParser parser = context.getResources()
                .getXml(R.xml.products);


          // flag points to find key and value tags .
        boolean keytag = false;
        boolean valuetag = false;
        String keyStaring = null;
        String stringvalue = null;


        HashMap<String, String> hashmap = new HashMap<String, String>();
        List<HashMap<String, String>> listResult = new ArrayList<HashMap<String, String>>();
        int event;
        try {
            event = parser.getEventType();

             // repeting the loop at the end of the doccument 

                 while (event != parser.END_DOCUMENT) {

               switch (event) {
                       //use switch case than the if ,else statements  
                case 0:
                        // start doccumnt nothing to do
                       // System.out.println("\n" + parser.START_DOCUMENT
                       // + "strat doccument");
                      // System.out.println(parser.getName());
                    break;
                case 1:
                    // end doccument
                    // System.out
                    // .println("\n" + parser.END_DOCUMENT + "end doccument");
                    // System.out.println(parser.getName());
                    break;
                case 2:

                    if (parser.getName().equals("key")) {
                        keytag = true;
                        valuetag = false;
                    }
                    if (parser.getName().equals("string")) {
                        valuetag = true;
                    }

                    break;
                case 3:
                    if (parser.getName().equals("dict")) {
                        System.out.println("end tag");
                        listResult.add(hashmap);
                        System.out.println(listResult.size() + "size");
                        hashmap = null;
                        hashmap = new HashMap<String, String>();
                    }
                    break;
                case 4:
                    if (keytag) {
                        if (valuetag == false) {
                            // hashmap.put("value", parser.getText());
                            // System.out.println(parser.getText());
                            // starttag = false;
                            keyStaring = parser.getText();
                        }
                    }
                    if (valuetag && keytag) {
                        stringvalue = parser.getText();

                        hashmap.put(keyStaring, stringvalue);
                        // System.out.println(keyStaring);
                        // System.out.println(stringvalue);
                        valuetag = false;
                        keytag = false;
                        // System.out.println("this is hash map"
                        // + hashmap.get(keyStaring));
                        // Toast.makeText(getApplication(), keyStaring,
                        // Toast.LENGTH_SHORT).show();

                    }
                    break;
                default:
                    break;
                }
                event = parser.next();
            }
        } catch (XmlPullParserException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
 //here you get the plistValues.
        return listResult;
    }
}
于 2013-12-27T18:35:19.137 回答