How to know GridView numColumns before setting up adapter in case of auto_fit?

北城余情 提交于 2019-12-24 00:49:11

问题


I am using GridView in my Android project, which is having auto_fit properties set for numColumns (with columnWidth set to 48dp).

I wanted to know numColumns value before setting up adapter, so I can setup values size.

but If I call it inside onCreateView is gives as -1

 @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {
        View rootView = inflater.inflate(R.layout.fragment_main, container, false);
        int numColumns = gv.getNumColumns();
        if(numColumns==-1) numColumns = 3;  //currently I've put a workaround as hardcode
        String [] values = new String[numColumns*10];
        int ctr = 0;
        for (int i = numColumns * (sectionNumber)+1; i <= (numColumns +1) * (sectionNumber); i++) {
            for (int j = 1; j <= 10; j++) {
                values[ctr++] = j * i + "";
            }
        }
        ArrayAdapter<String> adapter = new MyAdapter(getActivity(),values);
        gv.setAdapter(adapter);
        return rootView;
    }

来源:https://stackoverflow.com/questions/22690828/how-to-know-gridview-numcolumns-before-setting-up-adapter-in-case-of-auto-fit

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!