AlertDialog

  • Antworten:7
  • Bentwortet
NewAndroidGuy
  • Forum-Beiträge: 62

22.10.2012, 20:46:18 via Website

https://fscl01.fonpit.de/userfiles/3006166/image/121022-203432.jpg

Ich habe gleich mehrere fragen bezüglich des Alertdialoges:

1.wie kann ich die Farbe ändern ohne einen Customdialog bauen zu müssen.
(weil ich habe den ganzen Dialog in Quelltext geschrieben ohne xml file)

2.Da sich die größen des Alertdialoges je nach Handy ändern will ich die Größen von Edittexten anpassen.
wie sage ich s.o dem linken Edittext dass es sich soweit ausbreiten soll wie es kann, wenn die anderen beiden Views festgelegt sind ???

3.ist es möglich den Hintergrund eines Edittextes genau wie bei einem Textview durchsichtig zu machen ???
->bzw gibt es eine Möglichkeit "Transparenz" als Farbei zu setzten ???

— geändert am 22.10.2012, 20:47:59

Antworten
Stefan S.
  • Forum-Beiträge: 560

22.10.2012, 21:02:52 via Website

1.wie kann ich die Farbe ändern ohne einen Customdialog bauen zu müssen.
(weil ich habe den ganzen Dialog in Quelltext geschrieben ohne xml file)
Du kannst eine View hinterlegen und dort den Background setzen.

2.Da sich die größen des Alertdialoges je nach Handy ändern will ich die Größen von Edittexten anpassen.
wie sage ich s.o dem linken Edittext dass es sich soweit ausbreiten soll wie es kann, wenn die anderen beiden Views festgelegt sind ???
Verwende nie absolute Angaben sondern dp Einheiten. Dann wird die Breite/H automatiscöheh angepasst.

Zu Punkt 3 habe ich keinen Plan. Ev. kann es mit 1 kombiniert werden.

NewAndroidGuy

Antworten
Maximilian O
  • Forum-Beiträge: 990

22.10.2012, 21:54:15 via App

Ja, es ist ganz einfach möglich den Hintergrund eines edittext auf transparent zu setzen. Setze den alphawert einer Farbe einfach auf 00, zb #00000000.
LG Maximilian

Vergiss nie wieder Geburtstage, oder viel schlimmer, deinen Hochzeitstag - Birthdays Download

Antworten
NewAndroidGuy
  • Forum-Beiträge: 62

23.10.2012, 15:50:54 via Website

Danke an alle für die Antworten :D

Antworten
NewAndroidGuy
  • Forum-Beiträge: 62

23.10.2012, 15:53:30 via Website

ich kenne nur den befehl setMinWeidth und der nimmt nur int und keine strings wie kann ich im Quellcode strings angeben also:
setWeidth(20 dp).???

was steht in setLayoutparams(new LAyoutparams(x,y)); <-sind das pixel oder dp??

was ein pixel ist is klar, ein dp ist also ein fester abschnitt eines Bildschirms z.b. 1% von der gesamtbreite ne ???

— geändert am 23.10.2012, 16:09:55

Antworten
Stefan S.
  • Forum-Beiträge: 560

23.10.2012, 20:01:24 via Website

Du kannst in etwa sowas machen



down vote



You can create your view directly from the Layout Inflater, you only need to use the name of your layout XML file and the ID of the layout in file.

Dein LayoutFile

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/dialog_layout_root"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:padding="10dp"
>
und noch weitere controls
</LinearLayout>


Danach wie folgt den AlertDialog basteln
LayoutInflater inflater = getLayoutInflater();
View dialoglayout = inflater.inflate(R.layout.dialog_layout, (ViewGroup) getCurrentFocus());
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setView(dialoglayout);

Antworten
NewAndroidGuy
  • Forum-Beiträge: 62

23.10.2012, 21:39:32 via Website

Perfeckt das ist was ich gebraucht habe

:D Danke

Antworten
Maximilian O
  • Forum-Beiträge: 990

24.10.2012, 08:49:37 via App

NewAndroidGuy

was ein pixel ist is klar, ein dp ist also ein fester abschnitt eines Bildschirms z.b. 1% von der gesamtbreite ne ???
Leider ist dem nicht so. Du kannst dir ja mal die Definition von DIP anschauen. Ich weiß es selber nicht genau, aber definitiv sind es keine prozentangaben.

LG Maximilian

Vergiss nie wieder Geburtstage, oder viel schlimmer, deinen Hochzeitstag - Birthdays Download

Antworten