字符串切割的前导零

时间:2014-10-08 12:17:03

标签: android

我有很多图片的数字结尾如page_001,page_002 ... page_148。现在我不确定如何在使用Universal image Loader的ViewPager中实现它们。

这是我的instantiateItem方法,现在我有一个用于测试目的的修复图片。我如何格式化FileName结尾,以便我可以使用位置来指示应该加载哪个图像?或任何其他方式?

001 - > 1 002 - > 2 .. 148 - > 148

public Object instantiateItem(ViewGroup container, int position) {

    ImageView imageView = new ImageView(mContext);
    imageLoader.displayImage(String.format("%s%s/%s_Page_001.jpg", mProtocolPathName, mFilDir, mFilDir), imageView, options);
    container.addView(imageView);
    return imageView;
}

3 个答案:

答案 0 :(得分:1)

喜欢这个吗?

public Object instantiateItem(ViewGroup container, int position) {

    ImageView imageView = new ImageView(mContext);
    imageLoader.displayImage(String.format("%s%s/%s_Page_%03d.jpg", mProtocolPathName, mFilDir, mFilDir, position), imageView, options);
    container.addView(imageView);
    return imageView;
}

答案 1 :(得分:1)

3我使用mFileNumber作为文件编号,但这可以让你知道如何操作。

public Object instantiateItem(ViewGroup container, int position) {

    ImageView imageView = new ImageView(mContext);
    imageLoader.displayImage(String.format("%s%s/%s_Page_%03d.jpg", mProtocolPathName, mFilDir, mFilDir, mFileNumber), imageView, options);
    container.addView(imageView);
    return imageView;
}

答案 2 :(得分:0)

使用String.replaceFirst("^0+(?!$)", "")切断前导零。 或者在您的情况下,通过Integer.valueOf(String.split("page_")[1].replaceFirst("^0+(?!$)", ""));

从字符串中提取数字