1

在开发方面,我是 Android 平台的新手。但是,我从基本视图走得更远,我想创建类似以下按钮的东西:

艺术家在 Apollo 音乐播放器中查看

这就是我想要实现的。我首先认为带有自定义背景的按钮就足够了。但是,我不知道有什么方法可以用里面的文字制作那个更暗的小线。所有图像都像按钮一样反应,并在您触摸它时突出显示。

你能帮助我吗?

4

3 回答 3

3

如果您查看Apollo 的源代码,您会发现ArtistsFragment不是由Button组成,而是由SimpleCursorAdapter类的子类创建的膨胀的 RelativeLayout

由于任何视图都可以有一个OnClickListener ,因此您可以创建任何布局以使其看起来像您想要的那样,并且仍然让它像一个按钮一样工作:

// Or load it as an item from an existing layout.
View myView = this.getLayoutInflater().inflate(R.layout.anything);
myView.setOnClickListener(new OnClickListener(){

    public void onClick(View arg0) {
        // Do stuff.
    }

});
于 2012-09-11T18:50:27.263 回答
0

每个带有图像的片段都可以是背景设置为适当图像的布局。然后,您只需将按钮放在布局内。

于 2012-09-11T18:43:24.650 回答
0

您必须使用FramelayoutRelativeLayout。例如:

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">

    <ImageView  
        android:layout_width="fill_parent" 
        android:layout_height="fill_parent" 

        android:scaleType="center"
        android:src="@drawable/your_drawabele" />

    <TextView
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:layout_marginBottom="20dip"
        android:layout_gravity="center_horizontal|bottom"

        android:padding="12dip"

        android:background="#AA000000"
        android:textColor="#ffffffff"

        android:text="your_text" />

</FrameLayout>
于 2012-09-11T18:43:28.297 回答