android_demo 之生成颜色
老师说循环出颜色数字 然后显示出来
他说的什么一脸懵逼(=@__@=) 代码还在手上也还是懵逼 (づ。◕‿‿◕。)づ
不管了 留个脚印在这 以后想起来 至少也知道
直接上代码吧 说再多我也不懂啊(¬_¬)

/DynamicTable/res/layout/activity_main.xml
<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="horizontal" > <Button
android:id="@+id/button1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="一键自动生成" />
</LinearLayout> <TableLayout
android:id="@+id/table1"
android:layout_width="match_parent"
android:layout_height="match_parent" >
</TableLayout> </LinearLayout>
activity_main.xml
/DynamicTable/src/com/example/dynamictable/MainActivity.java
package com.example.dynamictable; import android.app.Activity;
import android.graphics.Color;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.TableLayout;
import android.widget.TableRow;
import android.widget.TextView; public class MainActivity extends Activity {
private final int WC = ViewGroup.LayoutParams.WRAP_CONTENT;
private final int MP = ViewGroup.LayoutParams.MATCH_PARENT;
private Button bt1;
private TableLayout tableLayout;
private int c; protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 获取控件Button
bt1 = (Button) findViewById(R.id.button1); // 给button按钮绑定单击事件
bt1.setOnClickListener(new OnClickListener() { public void onClick(View v) {
// 获取控件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); // tv.setText("-");
int rgb = Color.rgb(red * 16, green * 16, blue * 16);
tv.setBackgroundColor(rgb); // Color.rgb(red*16-1, green*16-1, blue*16-1)
// tv.setBackgroundResource(35434);
tableRow.addView(tv);
// System.out.println("i="+i+"; j="+j);
System.out.println(rgb + "=" + c++);
}
// 新建的TableRow添加到TableLayout
tableLayout.addView(tableRow, new TableLayout.LayoutParams(MP, WC, 1));
}
}
});
}
}
MainActivity.java
-_-|||
这就是代码了 (o_ _)ノ
注意运行的时候会比较慢,当你一直看见那个页面不动,不要激动,请耐心等待,好事多磨。你懂的。
由于考虑到电脑的因素我们就不循环全部颜色出来,只取其中的一部分。看见上面的颜色表,只是一部分而已,
这是16的 就是 那个 int theLength = 64;
展示展示效果

那什么 255什么的还是不敢试
测试了一半就强制退出了 囧rz=З 怕啊┑( ̄Д  ̄)┍ 怕手机hold 不住啊。
那什么 我还是瞎测试了一下 32的 就是 int theLength = 128; 的
等了好久才出了╮(╯_╰)╭

反正感觉它(ーー゛)好(@ ̄ー ̄@)丑
搜图片有这样的

感觉都要比那个循环出来的好看o( ̄ヘ ̄o#)
这手机截屏怎么这么大啊 崩溃(# ̄~ ̄#)
android_demo 之生成颜色的更多相关文章
- android_demo之生成颜色布局
前面学习了动态生成表格,不单单是要动态生成控件,也同时生成一个事件. 接下来用个小小栗子去了解这个知识点. <LinearLayout xmlns:android="http://sc ...
- Android 生成颜色器
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools=&q ...
- JavaScript随机生成颜色以及十六进制颜色 与RGB颜色值的相互转换
/** * 随机生成颜色 * @return 随机生成的十六进制颜色 */ function randomColor(){ var colorStr=Math.floor(Math.random()* ...
- iOS -UIColor随机生成颜色的方法
在iOS 中的UIColor拥有这么多关于颜色的类方法,对于一般常见的UI控件,我们可以通过[UIColorblackColor]设置背景色 eg:设置button 的背景色为红色 UIButton ...
- Android_demo之生成二维码
今天我们来学习一个自动生成二维码 的写法.我们经常能见到各种二维码,比如公众号的二维码,网址的,加好友的,支付的二维码等等.其实每一个二维码只是利用图片的形式展示出来的,实际是一些字符串.而这个字符串 ...
- js随机生成颜色代码
function generyRandomColor() { return '#' + ('00000' + (Math.random() * 0x1000000 << 0).toStri ...
- js随机生成颜色的方法
function getRandomColor() { return '#' + (Math.random() * 0xffffff << 0).toString(16); }
- js 随机生成颜色
方法一 function randomColor (){ var str='#'; for(var i=0;i<6;i++){ str+=Math.floor(Math.random()*16 ...
- .NET C#生成随机颜色,可以控制亮度,生成暗色或者亮色 基于YUV模式判断颜色明亮度
.NET C#生成随机颜色,可以控制亮度,生成暗色或者亮色 基于YUV模式判断颜色明亮度 随机颜色在日常开发中很常用到,有时候要控制颜色明亮度,比如在白色背景网页上的随机颜色,一般要求颜色稍微暗一 ...
随机推荐
- CSU 1021 从m个不同元素中取出n (n ≤ m)个元素的所有组合的个数,叫做从m个不同元素中取出n个元素的组合数。组合数的计算公式如下: C(m, n) = m!/((m - n)!n!) 现在请问,如果将组合数C(m, n)写成二进制数,请问转这个二进制数末尾有多少个零。
题目链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=82974#problem/B 解题思路:这个题目就是求因子的个数, m!/((m ...
- Aggregation Models
这是Coursera上<机器学习技法>的课程笔记. Aggregation models: mix or combine hypotheses for better performance ...
- POJ2533 Longest ordered subsequence
Longest Ordered Subsequence Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 41984 Acc ...
- java二进制文件复制
package com.starain.io; import java.io.BufferedInputStream;import java.io.BufferedOutputStream;impor ...
- QFII
QFII(Qualified Foreign Institutional Investors)合格的境外机构投资者的英文简称,中文“酋匪”,QFII机制是指外国专业投资机构到境内投资的资格认定制度. ...
- PHP学习之[第03讲]PHP5.4 语法、常量、变量、数据类型详解
1.<?php echo "Hello World"; ?> 2.//注释1,#注释2,/* 注释3 */ 3.系统常量: __FILE__默认常量,是指PHP程序文件 ...
- PHP学习之[第02讲]PHP5.4 Apache Mysql 搭配与多站点配置详解
小编用的是MAC系统,SO安装的是MAMP 知识点: 1.配置多站点:httpd.conf打开httpd-vhosts.conf,并在httpd-vhosts.conf设置多IP及端口指向,最后修改/ ...
- struts开发<struts中的action详细配置. 二>
在eclipse中新建项目StrutsDemo1[struts的配置见]struts开发<在eclipse中配置struts. 一> 详细文件夹结构例如以下 第一种配置方法 新建UserA ...
- CentOS 6.3下rsync服务器的安装与配置[转]
CentOS 6.3下rsync服务器的安装与配置 一.rsync 简介 Rsync(remote synchronize)是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件,也 ...
- Android中Application类用法
Application类 Application和Activity,Service一样是Android框架的一个系统组件,当Android程序启动时系统会创建一个Application对象,用来存储系 ...