Начать работу с элементами в GridView

#java #android #gridview

#java #Android #gridview

Вопрос:

На данный момент существует GridViewActivity, где на панели инструментов размещена кнопка » » (которая добавляет элементы в список GridView).

 public boolean onOptionsItemSelected(MenuItem item) {
if (item.getItemId() == R.id.addPerson) {
    addPersonToAdapter();
}
return super.onOptionsItemSelected(item);
}
  

Вопрос в том, возможно ли изображение в виде » » (или любого другого XML-файла) поместить в начало моего списка GridView, где, нажав на этот элемент, добавьте мои элементы, чтобы изображение » » всегда перемещалось вправо?

Теперь я добавляю некоторые изменения в свой код

 public int getCount() {
    return persons.size()   1;
}
  

и хочу добавить что-то подобное в мой метод getView

 public View getView(final int position, View convertView, ViewGroup parent) {
if(position == getCount - 1) {
return new "my image or what??"
} else {
    return View;
}
  

Полный код getView:

 public View getView(final int position, View convertView, ViewGroup parent) {
    person = persons.get(position);
    final ViewHolder viewHolder;
    if (convertView == null) {
        viewHolder = new ViewHolder();
        LayoutInflater inflater = LayoutInflater.from(activity);
        convertView = inflater.inflate(R.layout.list_item, parent, false);
        viewHolder.name = (TextView) convertView.findViewById(R.id.firstLastNameTextView);
        viewHolder.photo = (ImageView) convertView.findViewById(R.id.imageViewPhoto);
        convertView.setTag(viewHolder);
    } else {
        viewHolder = (ViewHolder) convertView.getTag();
    }
    viewHolder.name.setText(person.name);
    viewHolder.photo.setImageResource(setImage());

    Button buttonDelete = (Button) convertView.findViewById(R.id.deleteButton);
    buttonDelete.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            persons.remove(position);
            notifyDataSetChanged();
        }
    });

    return convertView;
}
  

Комментарии:

1. Что вы пробовали, вы смотрели на vimeo API

Ответ №1:

Определите перечислитель и передайте его в качестве параметра методу..

 public enum EVideo{
    YOUTUBE,
    VIMEO

}

private void useLinkInput(String input,EVideo video ) {
    Uri uri = Uri.parse(input);
    String videoID = uri.getQueryParameter("v");
    if(TextUtils.isEmpty(videoID)) {
        String[] str = input.split("/");
        videoID = str[str.length-1];
    }
    if(video == EVideo.YOUTUBE){
        source= "http://img.youtube.com/vi/";
    }else{
        source= "http://VIMEO.CN";
    }
    url = source   videoID  "/0.jpg";
    Log.d("url",url);

}
  

Комментарии:

1. плохой ответ! Перечисления Java ПЛОХО работают с Android

2. @apelsoczi даст лучший ответ