Transparente Ansicht über ImageView
Ich bin dort gesperrt. Ich versuche, eine transparente Ansicht über einen Hintergrund zu legen. Ich habe verschiedene Methoden ausprobiert.
durch XML mit:
android:background="@color/transparent"
oder
android:color="#80000000"
oder setzen Sie einen Verweis auf color.xml-Datei als so
<resources>
<color name="transp">#80000000</color>
</resources>
mit meiner layout.xml so
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 habe einige verwandte Posts gesehen, aber keine der Antworten hat funktioniert.
Außerdem ist es noch seltsamer, dass all diese Lösungen auf dem GraphicalLayout in Eclipse gut zu funktionieren scheinen. Aber wenn ich mein Gerät starte, bleibt der Bildschirm nicht transparent. Ich habe in dieser Ansicht eine Linie gezeichnet, um sicherzustellen, dass etwas passiert. und die Linie zeigt.
Hier ist meine 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 mein 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 das 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 irre ich mich? Vielen Dank!!!