Ich bin dort blockiert. Ich versuche eine transparente Ansicht über einen Hintergrund zu legen. Ich habe mehrere Methoden ausprobiert.Transparente Sicht über ImageView
Throught XML mit:
android:background="@color/transparent"
oder
android:color="#80000000"
oder einen Verweis setzen Datei color.xml als so
<resources>
<color name="transp">#80000000</color>
</resources>
mit meinem layout.xml wie diese
android:background="@color/transp"
Ich habe auch versucht, es durch generierten Code zu tun
myView.getBackground().setAlpha(45);
oder
myViewm.setBackgroundResource(R.color.trans);
ich einige Beiträge gesehen habe verwandt, aber keine der Antworten gearbeitet.
Außerdem ist noch seltsam, dass alle diese Lösungen scheinen auf dem GraphicalLayout in Eclipse gut zu funktionieren. Aber wenn ich mein Gerät starte, bleibt der Bildschirm nicht transparent. Ich habe eine Linie in dieser Ansicht gezeichnet, um sicherzustellen, dass etwas passiert; und die Linie zeigt.
hier ist mein layout.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
tools:context=".MainActivity" >
<ImageView
android:id="@+id/backgroundview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:src="@drawable/space_bg"
android:contentDescription="@string/desc" />
<View
android:id="@+id/tileview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"/><!--
android:background="@color/transp"/>-->
</RelativeLayout>
und meinen Code
private ImageView bg;
MyView tV;
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);
tV = new MyView(this);
setContentView(tV);
}
und die myView OnDraw
@Override
protected void onDraw(Canvas canvas)
{
super.onDraw(canvas);
this.setBackgroundResource(R.color.transp);
canvas.drawLine(10,20,30,40, paint);
}
Also, wo bin ich falsch? Danke !!!
Man ... du bist ein großzügiger Genie !!!! ... Dieses f *** g funktioniert! Mein Fehler war, dass ich einen Blick auf ein imageView werfen wollte? Warum hat es nicht funktioniert? Und wenn ich jetzt ein paar Zeilen über diese Ansicht zeichnen wollte, könnte ich das mit Code machen? – Antoine
@Antoine Froh, dass es geklappt hat. »Und wenn ich jetzt ein paar Zeilen über diese Ansicht zeichnen wollte, könnte ich das mit Code machen?« »Sie müssen genauer sein. Möchten Sie einige Linien zeichnen, die über die ImageView vordefiniert sind (dh sie erscheinen, wenn die Aktivität startet)? Oder möchtest du Freestyle (mit Berührungsereignissen) zeichnen, wenn deine App läuft? – Vikram
Entschuldigung, um vage zu sein ... Ich möchte einige Linien angezeigt werden, sobald die Aktivität beginnt, Kacheln tatsächlich mit einigen Ereignissen Listener. Und jede Erklärung, warum meine eigene Lösung nicht funktioniert hat? – Antoine