Прозрачный вид поверх ImageView
Я заблокирован там. Я пытаюсь поставить прозрачный вид поверх фона. Я пробовал несколько методов.
через XML с помощью:
android:background="@color/transparent"
или же
android:color="#80000000"
или поместить ссылку на файл color.xml как
<resources>
<color name="transp">#80000000</color>
</resources>
с моим layout.xml вот так
android:background="@color/transp"
Я также пытался сделать это с помощью сгенерированного кода
myView.getBackground().setAlpha(45);
или же
myViewm.setBackgroundResource(R.color.trans);
Я видел несколько связанных сообщений, но ни один из ответов не сработал.
Кроме того, еще более странно то, что все эти решения прекрасно работают на GraphicalLayout в Eclipse. Но когда я запускаю свое устройство, экран остается не прозрачным. Я нарисовал линию на этом виде, чтобы убедиться, что что-то происходит; и линия показывает.
вот мой 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>
и мой код
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);
}
и myView onDraw
@Override
protected void onDraw(Canvas canvas)
{
super.onDraw(canvas);
this.setBackgroundResource(R.color.transp);
canvas.drawLine(10,20,30,40, paint);
}
Так где я не прав? Спасибо!!!