小编Aby*_*zar的帖子

无法使字段“属性”可访问;更改其可见性或为其声明类型 gSON fromJson 编写自定义 TypeAdapter

我有一个名为游戏的课程:

public class Game {
    private String name;
    private int id;
    private GameFields[] gameFields;

    @Expose(deserialize = false)
    public ArrayList<Player> players = new ArrayList<>();

    public Game() {

    }

    public Game(String name, int id, GameFields[] gameFields) {
        this.name = name;
        this.id = id;
        this.gameFields = gameFields;
    }
}
Run Code Online (Sandbox Code Playgroud)

我想使用 GSON.fromJson 方法为此类创建对象。但问题是方法返回

Failed to make field 'com.example.Models.Game#name' accessible; either change its visibility or write a custom TypeAdapter for its declaring type
Run Code Online (Sandbox Code Playgroud)

这就是我调用该方法的方式

Gson gson = new Gson();
Game object = null;
try { …
Run Code Online (Sandbox Code Playgroud)

java gson

6
推荐指数
2
解决办法
4万
查看次数

在tabLayout中设置Icon会引发nullpointer异常

我正在创建一个像instagram这样的简单项目,它的主要活动有3个标签。我想在tablayout标签中添加带有文本的图标,但是会引发异常。

我的主要活动

public class MainActivity extends AppCompatActivity {
TabLayout tabLayout;
ViewPager viewPager;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);


    viewPager = (ViewPager) findViewById(R.id.viewPager);
    tabLayout = (TabLayout) findViewById(R.id.tabLayout);
    tabLayout.setupWithViewPager(viewPager);

    TabLayout.Tab tab = tabLayout.getTabAt(0);

    tab.setIcon(new IconicsDrawable(this).icon(FontAwesome.Icon.faw_home));


    viewPager.setAdapter(new CustomAdapter(getSupportFragmentManager(), getApplicationContext()));


}

private class CustomAdapter extends FragmentPagerAdapter {
    private String items[] = {"Home", "Upload", "Profile"};

    public CustomAdapter(FragmentManager supportFragmentManager, Context applicationContext) {
        super(supportFragmentManager);
    }

    @Override
    public Fragment getItem(int position) {
        switch (position) {
            case 0:
                return new fragment1();
            case 1:
                return new fragment2();
            case …
Run Code Online (Sandbox Code Playgroud)

android android-fragments android-viewpager android-tablayout

1
推荐指数
1
解决办法
4316
查看次数