我卡在那里了。我正在尝试在背景上放置一个透明的视图。我已经尝试了几种方法。
通过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);
我看到了一些相关的帖子,但是没有一个答案有效。
更奇怪的是,所有这些解决方案似乎在Eclipse的GraphicalLayout上都能正常工作。但是当我启动我的设备时,屏幕仍然不透明。我在那个视图上画了一条线来确保发生了某些事情;并且这条线确实显示出来了。
这是我的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);
and the myView onDraw@Override
protected void onDraw(Canvas canvas)
{
super.onDraw(canvas);
this.setBackgroundResource(R.color.transp);
canvas.drawLine(10,20,30,40, paint);
}
那么,我错在哪里了呢? 谢谢!!!
linePath
将包含4组点(point1X,point1Y,point2X,point2Y,point3X,point3Y,point4X,point4Y)。而rectF
将包围这些点内的区域。还要考虑发布一个新问题。我们在这个问题上的讨论与发布的问题无关。 - Vikram