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模式判断颜色明亮度 随机颜色在日常开发中很常用到,有时候要控制颜色明亮度,比如在白色背景网页上的随机颜色,一般要求颜色稍微暗一 ...
随机推荐
- rails console --sandbox出现的安装错误解决方案
rails中可以用使用console命令行来测试运行rails应用程序,但是采用源码编译安装的话可能缺少readline动态库,导致ruby无法使用这个库此时如果调用rails console(rai ...
- libvirt 命令行交互工具之virsh
libvirt是当前主流VM最低层库.IBM PowerVM也不例外,libvirt是深入玩虚拟化必须玩转的东西; 简单测试玩玩libvirt 的virsh命令行交互工具, 你我都知libvirt大体 ...
- java里遍历map的常见方式
public static void main(String[] args) { Map<String, String> map = new HashMap<String, Stri ...
- python_Opencv_读取视频
目标 • 学会读取视频文件,显示视频,保存视频文件 • 学会从摄像头获取并显示视频 • 你将会学习到这些函数:cv2.VideoCapture(),cv2.VideoWrite()用摄像头捕获视频 使 ...
- jquery width(), innerWidth(), outerWidth() 区别
#div1 { width: 100px; height: 100px; border: 5px black solid; padding: 10px; margin: 10px; backgroun ...
- ndroid调用平台功能具体技巧分享
Android操作系统那个可以通过调用手机平台来实现一些特定的功能,诸如网页的显示,邮件的发送等等.那么今天就为大家总结了几个Android调用平台功能的应用技巧,帮助大家增加编程经验. Androi ...
- msxml 操作xml
1.简介 在.NET平台,微软为C#或托管C++程序员提供了丰富的类库,用以支持各种需求,其中就有对XML文件操作的丰富的类.例如XMLDocument, XmlElement等.但是C++标准库中并 ...
- Java基础知识强化之IO流笔记01:异常的概述和分类
IO流操作的时候会出现很多问题,java中叫作异常,所以我们先介绍一下异常: 1. 程序的异常:Throwable(Throwable类是java中所有异常或错误的超类) (1)严重问题:Error ...
- VS2013配置文件常见问题解决方法
1.C++ VS2013出现LINK : fatal error LNK1104: 无法打开文件“kernel32.lib,”错误,什么原因啊?原因:项目->XX(项目名称)属性->链接器 ...
- html01基本标签
01. <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8 ...