Android 在安卓系统中给按钮上色时获得不好的视图

Android 在安卓系统中给按钮上色时获得不好的视图,android,background-color,Android,Background Color,我已经创建了一个android应用程序,它可以动态创建50个按钮,效果非常好,但问题是,当我使用下面给出的代码动态地为这些按钮添加一些背景色时,我的视图不好 buttons[i][j].setTextColor(Color.BLACK); buttons[i][j].setBackgroundColor(Color.GREEN); 我的代码如下,有人能告诉我一些解决方法吗 我的Android平台是2.3.3 import android.app.Activity; import android

我已经创建了一个android应用程序,它可以动态创建50个按钮,效果非常好,但问题是,当我使用下面给出的代码动态地为这些按钮添加一些背景色时,我的视图不好

buttons[i][j].setTextColor(Color.BLACK);
buttons[i][j].setBackgroundColor(Color.GREEN);
我的代码如下,有人能告诉我一些解决方法吗

我的Android平台是2.3.3

import android.app.Activity;
import android.os.Bundle;
import android.view.ViewGroup.LayoutParams;
import android.widget.Button;
import android.widget.LinearLayout;

public class MyMain extends Activity {
    @Override
    public void onCreate(Bundle savedInstanceState) 
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.mymain);
        createCalender();
    }
    public void createCalender()
    {  
        LinearLayout layoutVertical = (LinearLayout) findViewById(R.id.liVLayout);
        LinearLayout.LayoutParams param = new LinearLayout.LayoutParams(
        LayoutParams.MATCH_PARENT,
        LayoutParams.MATCH_PARENT, 1.0f);
        LinearLayout rowLayout=null;
        Button[][] buttons = new Button[10][5]; 
        int count=51;
        int tab=1;
        for (int i = 0; i<10; i++) 
        {
            if(count%5==1)
            {
                rowLayout = new LinearLayout(this);
                rowLayout.setWeightSum(5);
                layoutVertical.addView(rowLayout,param);
                count=count-5;
            }
            for(int j=0;j<5;j++)
            {
                buttons[i][j]=new Button(this);
                buttons[i][j].setText(""+tab);
                buttons[i][j].setHeight(35);
                buttons[i][j].setWidth(75);                                            
                buttons[i][j].setTextColor(Color.BLACK);
                buttons[i][j].setBackgroundColor(Color.GREEN);
                tab++;

                rowLayout.addView(buttons[i][j],param);
            }
        }
    }

}
导入android.app.Activity;
导入android.os.Bundle;
导入android.view.ViewGroup.LayoutParams;
导入android.widget.Button;
导入android.widget.LinearLayout;
公共类MyMain扩展活动{
@凌驾
创建时的公共void(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.mymain);
创建日历();
}
公共日历()
{  
LinearLayout Layout垂直=(LinearLayout)findViewById(R.id.liVLayout);
LinearLayout.LayoutParams param=新的LinearLayout.LayoutParams(
LayoutParams.MATCH_父级,
LayoutParams.MATCH_PARENT,1.0f);
LinearLayout rowLayout=null;
按钮[][]按钮=新按钮[10][5];
整数计数=51;
int tab=1;

对于(inti=0;i您应该添加一些边距,以便为这些按钮留出一些喘息空间

// First try with WRAP_CONTENT
LinearLayout.LayoutParams paramForButtons = new LinearLayout.LayoutParams(
                                                LayoutParams.WRAP_CONTENT,
                                                LayoutParams.WRAP_CONTENT, 1.0f);

// If the buttons look too small using WRAP_CONTENT, change to MATCH_PARENT
// Set the margins in this case
LinearLayout.LayoutParams paramForButtons = new LinearLayout.LayoutParams(
                                                LayoutParams.MATCH_PARENT,
                                                LayoutParams.MATCH_PARENT, 1.0f);


paramForButtons.setMargins(10, 10, 10, 10);
for
循环的最后一行替换为:

rowLayout.addView(buttons[i][j],paramForButtons);

您确定按钮[i[j].setWidth(75);
的设置正确吗?很抱歉,这是一个错误edit@user2018186没问题。我还有另一个建议。在您调用
rowLayout=newlinearlayout(this);
之后,将rowLayout的背景色设置为除绿色以外的其他颜色:rowLayout.setBackgroundColor(color.BLACK)。这将使按钮突出。superbb……。先生,当我们单击这些按钮时,它不会显示任何效果而不是动作,就像我们在普通按钮中看到的那样,当我们单击它时,它将弹出内部…。我们如何在这里做到这一点…@user2018186您想开始另一个问题吗?很难在评论中回答。但我可以帮助您先生,我为此贴了一个新问题