zoukankan      html  css  js  c++  java
  • Android 生成颜色器

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical" >
    
        
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="vertical" >
    
            <LinearLayout
                android:layout_weight="1"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:orientation="horizontal" >
                    
                <TextView 
                    android:layout_width="wrap_content"
                    android:gravity="center_vertical"
                    android:layout_height="match_parent"
                    android:layout_marginLeft="10dp"
                    android:textSize="20sp"
                    android:text="请输入行:"
                    />
    
                <EditText
                    android:id="@+id/editText1"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:ems="10"
                    android:hint="请输入数字!"
                    android:numeric="decimal" />
                
            </LinearLayout>
            
            <LinearLayout
                android:layout_weight="1"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:orientation="horizontal" >
                
                <TextView 
                    android:layout_width="wrap_content"
                    android:gravity="center_vertical"
                    android:layout_height="match_parent"
                    android:layout_marginLeft="10dp"
                    android:textSize="20sp"
                    android:text="请输入列:"
                    />
    
                <EditText
                    android:id="@+id/editText2"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:ems="10"
                    android:hint="请输入数字!"
                    android:numeric="decimal">
    
                    <requestFocus />
                </EditText>
                    
            </LinearLayout>
            
            <LinearLayout 
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:orientation="horizontal" 
                >
                
                <Button 
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:id="@+id/button1"
                    android:text="一键自动生成表格"
                    />
                
            </LinearLayout>
            
        </LinearLayout>
    
    
        <TableLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent" 
            android:id="@+id/table1">
    
            
        </TableLayout>
    
    </LinearLayout>
    import android.app.Activity;
    import android.graphics.Color;
    import android.os.Bundle;
    import android.util.Log;
    import android.view.Gravity;
    import android.view.Menu;
    import android.view.MenuItem;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.view.ViewGroup;
    import android.widget.Button;
    import android.widget.EditText;
    import android.widget.TableLayout;
    import android.widget.TableRow;
    import android.widget.TextView;
    import android.widget.Toast;
    
    
    public class MainActivity extends Activity {
        private final int WC = ViewGroup.LayoutParams.WRAP_CONTENT;    
        private final int MP = ViewGroup.LayoutParams.MATCH_PARENT;  
        private EditText row;
        private EditText column;
        private Button bt1;
        private TableLayout tableLayout;
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            //获取控件Button
            bt1=(Button) findViewById(R.id.button1);
            //获取文本输入框控件
            row=(EditText) findViewById(R.id.editText1);
            column=(EditText) findViewById(R.id.editText2);
            
            //给button按钮绑定单击事件
            bt1.setOnClickListener(new OnClickListener() {
                
                @Override
                public void onClick(View v) {
                    //Color[] colorBlocks= new Color[4096];
                    //int row_int=Integer.parseInt(row.getText().toString());
                    //int col_int=Integer.parseInt(column.getText().toString());
                    
                    
                     //获取控件tableLayout     
                    tableLayout = (TableLayout)findViewById(R.id.table1); 
                    //清除表格所有行
                    tableLayout.removeAllViews();
                    //全部列自动填充空白处     
                    tableLayout.setStretchAllColumns(true);    
                    //生成X行,Y列的表格     
                   
                    int theLength = 64;
                    
                    
                    for(int i=0;i<theLength;i++)    
                    {    
                        TableRow tableRow=new TableRow(MainActivity.this);    
                        //生成颜色
                        for(int j=0;j<theLength;j++)    
                        {    
                            int result = i*theLength +(j+1)-1;//0~4095
                            int red = result / 256 ;
                            int green = (result-red*256) / 16;
                            int blue = result-red*256 - green*16;
                            
                            //tv用于显示     
                            TextView tv=new TextView(MainActivity.this);
                            //Button bt=new Button(MainActivity.this);
                            
                            
                            tv.setText("-");   
                            tv.setBackgroundColor( Color.rgb(red*16, green*16,  blue*16) );
                            
                            //Color.rgb(red*16-1, green*16-1,  blue*16-1)
                            //tv.setBackgroundResource(35434);
                            tableRow.addView(tv);    
                        }    
                        //新建的TableRow添加到TableLayout
                 
                        tableLayout.addView(tableRow, new TableLayout.LayoutParams(MP, WC,1)); 
                    }
                    
                    
                }
            });
            
            
        }  
    
    }

     效果呢,博客就不展示了。可以自己试试。黄沙百战穿金甲,不破楼兰终不还

  • 相关阅读:
    Xcode7中你一定要知道的炸裂调试神技【转载】
    让Category支持添加属性与成员变量【转载】
    KVC与KVO
    时间与日期处理【转载】
    iOS 字符属性NSAttributedString描述【转载】
    搜索引擎-倒排索引基础知识
    sql server命令行
    复习索引
    【藏】使用Entity Framework时要注意的一些性能问题
    windows 8.1 安装 .Net Framework 3.5
  • 原文地址:https://www.cnblogs.com/hxb2016/p/6095520.html
Copyright © 2011-2022 走看看