2013-03-12 5 views
0

Прошу прощения, если этот вопрос повторяется. У меня проблема:раздувание макета вещь

У меня есть одна main_activity с main_layout.xml. У меня есть TextView и SeekBar1. Я добавил меню с custom_dialog_layout который имеет seekbar2. Dialog показывает, что custom_dialog с помощью строки поиска.

при этом:

inflater = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
view = inflater.inflate(R.layout.resize_dialog,null); 
seekbar = (SeekBar)findViewById(R.id.seekBar2); 

применение силы закрывается.

ответ

0

Попробуйте это.

inflater = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
view = inflater.inflate(R.layout.resize_dialog,null); 
seekbar = (SeekBar)view. findViewById(R.id.seekBar2); 

/** Добавим, что надутый вид на AlertDialog */

AlertDialog.Builder builder = new AlertDialog.Builder(this); 
    builder.setTitle(R.string.app_name); 
    builder.setView(view); 

использовать это для отмены Dialog. i.e dialog.dismiss();

.setPositiveButton(
       getResources().getString(R.string.Cancel), 
       new DialogInterface.OnClickListener() { 
        public void onClick(DialogInterface dialog, 
          int whichButton) { 
         dialog.dismiss(); 
        } 
       }); 
     alert = builder.create(); 
     alert.show(); 
+0

Это работает для первого временени я снова откройте диалоговое окно, не закрывая приложение, я получил еще Проблема: «java.lang.IllegalStateException: указанный дочерний элемент уже имеет родительский элемент. Сначала вы должны вызвать removeView() для родителя ребенка». – prashantwosti

0

заменить следующим кодом.

inflater = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
view = inflater.inflate(R.layout.resize_dialog,null); 
seekbar = (SeekBar)view.findViewById(R.id.seekBar2); 

необходимо найти ссылку view, чтобы найти идентификатор.

+0

damn..that был «VIEW» .. это сработало, спасибо всем за мгновенную помощь .. – prashantwosti

0

используйте нижеследующий код.

private class ViewHolder {   
    SeekBar seekbar ; 

} 


    public View getView(final int position, View convertView, ViewGroup parent) { 
     LayoutInflater mInflater = (LayoutInflater) context 
      .getSystemService(Activity.LAYOUT_INFLATER_SERVICE); 

    if(convertView==null) 
    { 
     convertView=mInflater.inflate(R.layout.resize_dialog, null); 
     holder=new ViewHolder(); 
     holder.seekbar = (SeekBar)convertView.findViewById(R.id.seekBar2); 
     convertView.setTag(holder); 
      } 
     else 
    holder=(ViewHolder) convertView.getTag(); 


     return convertView; 
Смежные вопросы