Tecnologia do Blogger.
RSS

Re: [androidbrasil-dev] Espaço dialog conteúdo

Eu pensei em fazer a acao dentro da classe dialog, mas acho melhor ficar fora dela.
e se eu quiser a acao fora da classe dialog?
Por exemplo, o botao "nao" daria um "finish()" na Activity a qual o dialog foi chamado.


Renato


On Tue, Jul 24, 2012 at 4:53 PM, Thiago Lopes Rosa <thiago.rosa@gmail.com> wrote:
Você quer setar uma acao dentro da propria classe do dialog ou adicionar um listener na activity que vai mostrar o dialog?

Se for dentro da propria classe:
            nao.setOnClickListener(new View.OnClickListener() {
           
public void onClick(View v) {
                // bla bla bla

           
}
       
});




Thiago


2012/7/24 Renato Porto Puccini <renatoppuccini@gmail.com>
Thiago,
criei um dialog herdando do dialog do sistema.
Ae adicionei 2 botoes, mas nao consigo setar evento neles.

DAe pau quando eu tento usar o setOnclickListener
Mensagem de erro = The method setOnClickListener(View.OnClickListener) in the type View is not applicable for the arguments (new DialogInterface.OnClickListener(){})

Como eu poderia setar eventos diferentes para cada botao?
<code>

@Override
protected void onCreate(Bundle savedInstanceState) {

// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.dialog);

TextView pic = (TextView)findViewById(R.id.txtAddPic);
pic.setTypeface(font);



ImageButton nao = (ImageButton)findViewById(R.id.imbNao);
ImageButton sim = (ImageButton)findViewById(R.id.imbSim);

nao.setOnClickListener(new OnClickListener() {

public void onClick(View v) {

// TODO Auto-generated method stub

}

@Override
public void onClick(DialogInterface dialog, int which) {

// TODO Auto-generated method stub

}
});
</code>
------------------------------------------
Renato Porto Puccini
renatopuccinipt.com
@renatoporto
renatoppuccini@gmail.com
------------------------------------------



On Tue, Jul 24, 2012 at 1:31 PM, Thiago Lopes Rosa <thiago.rosa@gmail.com> wrote:
Você está usando o Dialog do sistema e nesse dialog tem essas cores e espacamentos... Você tem que criar o seu próprio dialog!

Eu tenho uma classe CustomDialog extends Dialog com um construtor assim:

       public CustomDialog(Context context, boolean cancelable) {
       
super(context, R.style.DialogTheme);

        requestWindowFeature
(Window.FEATURE_NO_TITLE);
        setCancelable
(cancelable);
   
}

E um style:
       <style name="DialogTheme" parent="android:Theme.Dialog">
       
<item name="android:windowBackground">@color/transparent</item>
   
</style>



Daí para cada Dialog diferente eu tenho uma classe, por exemplo:

    public class AboutDialog extends CustomDialog {

   
public AboutDialog(Context context, Typeface typeface) {
       
super(context, true);
        setContentView
(R.layout.dialog_about);

        getWindow
().setBackgroundDrawableResource(R.color.transparent);

      ....
            ....
            ....
    

   
}

}



Thiago


On Tue, Jul 24, 2012 at 1:17 PM, Buiu <buiucardoso@gmail.com> wrote:
tentei tbm...

// @Override
// protected Dialog onCreateDialog(int id) {
// // TODO Auto-generated method stub
// Dialog dialog = null;
//
// switch (id) {
// case CUSTOM_DIALOG_ID:
// dialog = new Dialog(this, R.style.myBackgroundStyle);
//
// dialog.setContentView(R.layout.lembrete);
// dialog.setTitle("Custom Dialog");
//
//
// break;
// }
// return dialog;
// }

2012/7/24 Thiago Lopes Rosa <thiago.rosa@gmail.com>
Você precisa criar o próprio dialog!
Experimenta fazer sem usar o AlertDialog do sistema!


Thiago


On Tue, Jul 24, 2012 at 1:03 PM, Buiu <buiucardoso@gmail.com> wrote:
Margin e pedding não resolveram...

estou criando o dialog desta forma:


private void lembrete() {

AlertDialog.Builder builder;
AlertDialog alertDialog;

vi = View.inflate(this, R.layout.lembrete, null);
builder = new AlertDialog.Builder(this);
builder.setView(vi);

builder.setTitle(R.string.Lembrete_Titulo);
builder.setCancelable(false);
builder.setNegativeButton(R.string.BTN_Fechar,
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
dialog.cancel();
}
});

alertDialog = builder.create();
alertDialog.show();

}


2012/7/24 Duanniston Cardoso Cabral <duanniston@gmail.com>
Crie um layout personalizado
 

com panding 0
margin 0

vai testando ai 



--
Abraço
Cristian Cardoso
App CTN Car: http://goo.gl/fPCjE




--
Thiago Rosa



--
Abraço
Cristian Cardoso
App CTN Car: http://goo.gl/fPCjE




--
Thiago Rosa




--
Thiago Rosa

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

0 comentários:

Postar um comentário