BloggerAds

2013年10月8日 星期二

2013年10月4日 星期五

[Android] 手機APP開發-以高級理髮院為例


為理髮院之設計師設計一個客戶資料的管理APP,
我們在設計前需要評估作法、限制等...

"客戶資料"這四個字很籠統,是甚麼樣子的客戶資料呢 ? 所以要先去定義出客戶資料裡的功能細項,比較好想往後設計的介面。

工具 :eclipse、如使用到網路html資源可用dreamweaver 工具或 maqetta(在瀏覽器上製作html的工具)

[Android] HTML 在畫布上畫圖(canvas)



<canvas id="t_canvas" width="400" height="400"></canvas>
<Script type="text/javascript">
   var x = 0;
   var y = 0;
   var isPaint = false;
   var canvas = document.getElementById('t_canvas');
   var ctx = canvas.getContext('2d');
  
   var imgData = ctx.getImageData(0,0,400,400);
  
   canvas.onmousedown = function (event){
    isPaint = true;
   };
   canvas.onmouseup = function (event){
    isPaint = false;
   };
   canvas.onmousemove = function (event){   
    if (isPaint){
     ctx.beginPath();
     ctx.moveTo(x,y);
     ctx.lineTo(event.x,event.y);
     ctx.strokeStyle = "red";
     ctx.stroke();
    }
    x = event.x;
    y = event.y;
   };
   function ctx_save(){
    imgData = ctx.getImageData(0,0,400,400);
   }
   function ctx_restore(){
    ctx.putImageData(imgData,0,0);   
   }
   function ctx_clear(){
    ctx.clearRect(0,0,400,400);   
   }
</Script>
<input type="button" value="save" onclick="ctx_save()"></input>
<input type="button" value="restore" onclick="ctx_restore()"></input>
<input type="button" value="clear" onclick="ctx_clear()"></input>

2013年10月3日 星期四

[Android] Android 畫面延遲再換頁基本使用

難度:★☆☆☆☆☆☆☆☆☆ 10%
想讓APP載入時,想顯示一個LOGO來增加質感,您可以這樣使用

代碼 :
 package com.school;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;

public class logo extends Activity  {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.logo);

handler.sendMessageDelayed(new Message(), 5000); //延遲5000ms=5s
}
private Handler handler = new Handler() {
        @Override
        public void handleMessage(Message msg) {
            super.handleMessage(msg);
            Intent intent = new Intent();
            intent.setClass(logo.this, MainActivity.class); //換頁到MainActivity.class頁面
            logo.this.startActivity(intent);
            logo.this.finish();
        }
    };

}


2013年9月30日 星期一

Fuzzy(模糊理論)

example 

1. 對於胖的定義為150公斤以上,未滿150公斤為瘦,請將下面明確數轉為模糊數。
(1) 160公斤 : 胖
(2) 151公斤 : 胖
(3) 149公斤 : 瘦
(4) 150公斤:  胖

2.對於胖的定義為150公斤以上,則對於150公斤的明確數轉為模糊數胖還是瘦?
答: 依照字面的定義150公斤為胖,但又接近瘦



若x的數值為連續的則稱為連續型模糊集合

若x的數值是以個別為主的則稱為離散型模糊集合


2013年9月27日 星期五

軟體開發案


Software Domain
1.商業流程 (每個行業內容或細部規則)
2.介面技術
3.硬體技術





Mobile Project Example

Android 股票下單APP程式設計
執行內容:

1.股票期貨api下單APP,Android系統
2.需對股票API介接資料有實務經驗
3.有相關APP經驗及有作品的優先配合
4.詳細需求內容請提案人直接與發案方討論

2013年6月26日 星期三

[Android] Android Button切換頁面

難度:★☆☆☆☆☆☆☆☆☆ 10%

切換頁面是寫Android之基本且不可或缺的動作,使用按鈕監聽OnClickListener監聽,在裡面透過Intent切換Activity,之後必須在AndroidManifest.xml 註冊Activity

MainActivity.java

2013年6月16日 星期日

[Android] Android 按鈕按下、彈起狀態及簡單應用

難度:★★☆☆☆☆☆☆☆☆15%
要讓按鈕按下彈起其實非常簡單,用OnTouchListener監聽,
並在裡面判斷按下及彈起事件


先貼上簡單的程式碼 

2013年6月10日 星期一

6/5 (圖片拖拉)


<%@ page language="java" contentType="text/html; charset=BIG5"
pageEncoding="BIG5"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=BIG5">
<title>Insert title here</title>
<style type="text/css">
#box {
padding-left: 150px;
width: 400;
}

#dropzone1 {
background: #ffffff;
color: #d90b0b;
margin-left: 50px;
padding-left: 50px;
height: 200px;
width: 200px;
border: dashed #40464d 3px;
float: left;
font-weight: bold;
border: dashed #40464d 3px;
}

#dropzone2 {
background: #ffffff;
color: #d90b0b;
margin-left: 50px;
padding-left: 50px;
height: 200px;
width: 200px;
border: dashed #40464d 3px;
float: left;
font-weight: bold
}
</style>

</head>
<script>

function dragStart(ev) {
ev.dataTransfer.effectAllowed = 'copy';
ev.dataTransfer.setData("Text", ev.target.getAttribute('id'));
return true;
}
function dragEnter(ev) {
ev.preventDefault();
return true;
}

function dragOver(ev) {
return false;
}

function dragDrop(ev) {
var eleid = ev.dataTransfer.getData("Text");
ev.target.appendChild(document.getElementById(eleid));
ev.preventDefault();

}



</script>







<body>
4990E102 魏崇訓 4990E066楊欣翰
<div id="box">
<img id="box1" src="flower1.jpg" ondragStart="return dragStart(event)"
ondragend="return dragEnd(event)" />
<img id="box2" src="flower2.jpg" ondragStart="return dragStart(event)"
ondragend="return dragEnd(event)" />
</div>
<br />
<div id="dropzone1" ondragenter="return dragEnter(event)"
ondragover="return dragOver(event)" ondrop="return dragDrop(event)">


<p>豬籠草</p>
</div>

<div id="dropzone2" ondragenter="return dragEnter(event)"
ondragover="return dragOver(event)" ondrop="return dragDrop(event)">

<p>太陽花</p>
</div>

</body>
</html>

2013年6月4日 星期二

6/5 慶寶之Html

<%@ page language="java" contentType="text/html; charset=BIG5"
pageEncoding="BIG5"%>
<%@ page import="java.sql.*"%>
<%@ page import="java.io.*"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=BIG5">
<title>Insert title here</title>
</head>
<body>
4990E102<br>
<%
String stuno=request.getParameter("stuno");
if(stuno==null)stuno="" ;
%>
<form target="t01.jsp">
stuno或class:<input type = "text" name ="stuno" value="<%=stuno %>" size="8" />
<input type = "submit"  />

</form>

<%

out.print("stuno="+stuno+"<br>");

String JDriver = "sun.jdbc.odbc.JdbcOdbcDriver";
String connectDB = "jdbc:odbc:DB111";
Class.forName(JDriver);
Connection con = DriverManager.getConnection(connectDB);
Statement stmt = con.createStatement();
String sql = "select * from D1";
//where STUNO='A002'OR STUNO='A001' ORDER BY STUNO asc";// order by 排序//desc降冪,asc升羃

if(!stuno.equals(""))sql=sql+" where STUNO='"+stuno+"' or CLASS='"+stuno+"'order by STUNO desc ";
ResultSet rs = stmt.executeQuery(sql);

while (rs.next()) {
String tmpNo = rs.getString("STUNO");
String tmpName = rs.getString("NAME");
String tmpClass = rs.getString("CLASS");
out.print(tmpNo + "," + tmpName + "," + tmpClass + "<br>");
}
stmt.close();
con.close();
%>

</body>
</html>

上架第一支app,健康計算機