首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Gridview按钮配置

Gridview按钮配置
EN

Stack Overflow用户
提问于 2011-04-19 06:02:56
回答 2查看 2.5K关注 0票数 0

我有一个显示按钮的Gridview,这些按钮从数组中获取内容,请参见以下内容:

xml:

代码语言:javascript
复制
<LinearLayout
    android:background="@raw/br_poster_dark"
    android:orientation="vertical"    
    android:layout_height="fill_parent"
    android:layout_width="fill_parent"
    android:layout_gravity="center"
    android:padding="30dip"     >   



            <GridView android:id="@+id/brgrid"
                android:layout_width="fill_parent" 
                android:layout_height="fill_parent"
                android:padding="5dp"
                android:columnWidth="90dp"
                android:rowHeight="90dp"
                android:numColumns="3"
                android:gravity="center"
                android:textColor="#ffffff"
                />

</LinearLayout>

按钮的java代码:

代码语言:javascript
复制
public View getView(int position, View convertView, ViewGroup parent) {
    try {
        final Sample sample = board.getSamples().get(position);

        if (sample != null) {
            Button button = new Button(context);
            button.setText(sample.getName());


            button.setBackgroundResource(R.drawable.roundedbutton);

正如你所看到的,我有一个自定义的背景(透明渐变和圆角),它工作得很好,但我很难改变按钮的其他属性,因为大多数代码通常会在“button”下进入xml:

例如,更改文本的颜色无效,更改GridView xml下的行/列大小无效...

我还想让它用均匀的按钮大小显示均匀间隔的网格,而不是将传递给按钮的文本包装起来,然后将它们塞到屏幕的顶部。

有没有办法创建一个供Gridview使用的xml按钮?

提前谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-04-23 20:46:27

我找到了一种使用密度比例来设置按钮的文本大小和布局的方法:

代码语言:javascript
复制
button.setLayoutParams(new GridView.LayoutParams((int)(80 * densityScale + 0.5f), (int)(50 * densityScale + 0.5f)));

button.setTextSize(12);
票数 1
EN

Stack Overflow用户

发布于 2011-04-19 06:12:42

我不明白为什么需要在代码中声明按钮。将其放入de中,并通过使用finViewById()检索按钮来设置文本

希望这能帮上点忙

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5709425

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档