简体   繁体   English

如何从pagerAdapter内部调用getString()

[英]how to call getString() from inside pagerAdapter

package com.example.android.booklisting;

import android.content.Context;
import android.support.annotation.NonNull;
import android.support.v4.view.PagerAdapter;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.RelativeLayout;
import android.widget.TextView;

public class SliderAdapter extends PagerAdapter {

    Context context;
    LayoutInflater layoutInflater;

    public SliderAdapter(Context context) {
        this.context = context;
    }

    public String[] slide_headings = {
            context.getString(R.string.onboard1Header),
            context.getString(R.string.onboard2Header),
            context.getString(R.string.onboard3Header)
    };
}

I have tried to pass in context and also tried getResources().getString(), still did not work. 我尝试传递上下文,还尝试了getResources()。getString(),但仍然无法正常工作。 What am i doing wrong? 我究竟做错了什么?

尝试使用getResources()方法获取字符串:

String yourString = context.getResources().getString(R.string.yourResource);

Change 更改

public String[] slide_headings = {
        context.getString(R.string.onboard1Header),
        context.getString(R.string.onboard2Header),
        context.getString(R.string.onboard3Header)
};

To

private int[] slide_headings = {
        R.string.onboard1Header,
        R.string.onboard2Header,
        R.string.onboard3Header
};

And use it like this: 并像这样使用它:

String yourString = context.getResources().getString(slide_headings[yout_index]);

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM