Java 如果我没有';我没有getter和setter方法

Java 如果我没有';我没有getter和setter方法,java,android,listview,Java,Android,Listview,这是我的适配器类 public class MenuAdapter extends HeaderListAdapter implements View.OnClickListener { private View v; private int selPos = 3; Typeface font = Typeface.createFromAsset(getActivity() .getAsse

这是我的适配器类

public class MenuAdapter extends HeaderListAdapter implements
            View.OnClickListener {

        private View v;
        private int selPos = 3;
        Typeface font = Typeface.createFromAsset(getActivity()
                .getAssets(), "OpenSans-Semibold.ttf");

        Typeface font1 = Typeface.createFromAsset(getActivity()
                .getAssets(), "OpenSans-Bold_0.ttf");

        // ======
        @Override
        public View getHeaderView(int pos, View cv, ViewGroup vg, Object o) {

            View v = cv;
            if (cv == null)
                v = LayoutInflater.from(vg.getContext()).inflate(
                        R.layout.menu_header_row, vg, false);
            TextView textView = (TextView) v.findViewById(R.id.textView1);
            textView.setText(String.valueOf(o));
            textView.setTextColor(Color.LTGRAY);
            textView.setTypeface(font1);
            textView.setTextSize(19);
            return v;
        }

        // ===
        @Override
        public View getItemView(int pos, View cv, ViewGroup vg, Object o) {

            final Object n = o;
            v = cv;
            if (cv == null)
                v = LayoutInflater.from(vg.getContext()).inflate(
                        R.layout.menu_item_row, vg, false);

            String[] separated = String.valueOf(o).split("-");

            // Log.v("adapter value", String.valueOf(o));
            TextView textView = (TextView) v.findViewById(R.id.textView1);
            textView.setText(separated[0]);
            textView.setTextColor(Color.WHITE);
            textView.setTypeface(font);
            textView.setTextSize(19);

            ImageView imageView = (ImageView) v.findViewById(R.id.imageView1);
            imageView.setScaleType(ScaleType.FIT_XY);

            View vi = mDrawerList.getChildAt(pos - mDrawerList.getFirstVisiblePosition());
            Log.v("log", vi+"");

            if (pos == 1) {

                imageView.setBackgroundResource(R.drawable.ic_launcher);
            } 
            else {
                imageView.setImageResource(Integer.parseInt(separated[1]));
            }
            v.setOnTouchListener(touchListener);
            v.setOnClickListener(viewListener);
            v.setTag(pos);

            if (pos == selPos && (pos != 1 && pos != 16)) {
                v.setBackgroundColor(Color.parseColor("#2980b9"));
            } else {
                v.setBackgroundColor(Color.TRANSPARENT);
            }

            return v;
        }

        // ===
        @Override
        public View getCustView(int pos, View cv, ViewGroup vg, Object o) {
            // TODO Auto-generated method stub
            final Object n = o;
            v = cv;
            if (cv == null)
                v = LayoutInflater.from(vg.getContext()).inflate(
                        R.layout.menu_custom_row, vg, false);

            EditText editText = (EditText) v.findViewById(R.id.editText1);
            editText.setHint("Search");
            editText.setTypeface(font);
            editText.setPadding(10, 0, 0, 0);

            return v;
        }

        // ===
        @Override
        public void onClick(View v) {

        }

        private OnTouchListener touchListener= new OnTouchListener() {

            @Override
            public boolean onTouch(View v, MotionEvent event) {
                // TODO Auto-generated method stub
                v.setBackgroundColor(Color.parseColor("#2980b9"));
                return true;
            }
        };

        private OnClickListener viewListener = new OnClickListener() {

            @Override
            public void onClick(View v) { // TODO Auto-generated method

                //ba.notifyDataSetChanged();
                selPos = Integer.parseInt(v.getTag().toString());
            //  displayView(selPos);

            }

        };

    }
在GetItemView中,在listview的第一个位置,需要更新其映像。 但这张图片设置为多个位置,而我在偷窥。
请检查if(pos=1){//do change}

处的代码。您可以使用
pos
从列表中获取所需位置

在适配器中:

if (pos == 1)
    Object item = getItem(pos);
也许这个有帮助。

试试看

public static void ensureVisible(ListView listView, int pos)
{
if (listView == null)
{
    return;
}

if(pos < 0 || pos >= listView.getCount())
{
    return;
}

int first = listView.getFirstVisiblePosition();
int last = listView.getLastVisiblePosition();

if (pos < first)
{
    listView.setSelection(pos);
    return;
}

if (pos >= last)
 {
    listView.setSelection(1 + pos - (last - first));
    return;
 }
}
publicstaticvoid可修改(ListView-ListView,int-pos)
{
如果(listView==null)
{
返回;
}
如果(pos<0 | | pos>=listView.getCount())
{
返回;
}
int first=listView.getFirstVisiblePosition();
int last=listView.getLastVisiblePosition();
如果(位置<第一位)
{
listView.setSelection(pos);
返回;
}
如果(位置>=最后一个)
{
setSelection(1+pos-(last-first));
返回;
}
}

你说的“获得第一名”是什么意思?您想检索视图对象还是数据对象?我试图在列表的第一个位置添加一些修改,我使用if(pos==1){//Do chanes}。但变化反映在多个立场上。当我在搜索时。好的,你想从列表中获取第一个对象还是从列表中获取第一个可见对象?如果你想获得此网站上的帮助,请花一些时间解释你的问题。有三个答案适合你,但没有一个能真正帮助你。为了理解问题是什么,我需要问几个问题。请尊重那些花时间帮助你的人。好的,有什么问题吗?欢迎来到stack overflow。请你回答的时候再详细一点。解释您的解决方案实现了什么。
public static void ensureVisible(ListView listView, int pos)
{
if (listView == null)
{
    return;
}

if(pos < 0 || pos >= listView.getCount())
{
    return;
}

int first = listView.getFirstVisiblePosition();
int last = listView.getLastVisiblePosition();

if (pos < first)
{
    listView.setSelection(pos);
    return;
}

if (pos >= last)
 {
    listView.setSelection(1 + pos - (last - first));
    return;
 }
}