html,css,javascript,jquery

app.js




// this sets the background color of the master UIView (when there are no windows/tab groups on it)
Titanium.UI.setBackgroundColor('#000');

// create tab group
var tabGroup = Titanium.UI.createTabGroup();

// 1番目のタブの定義
var tab1 = Titanium.UI.createTab({
	icon: 'dark_appcelerator.png',
	title: '公式アカウント',
	window: Titanium.UI.createWindow({
		title: '公式アカウント',
		backgroundColor: '#fff',
		url: 'tab1.js'
	})
});
//
// create base UI tab and root window
//
/*
var win1 = Titanium.UI.createWindow({  
    title:'@appcelerator',
    backgroundColor:'#fff',
    //分割先のスクリプトファイルパス
    url:'win1.js'
});
*/



/*
Titanium.App.addEventListener('custom',function(e){
	//イベント引数として受け取るのではなくアプリケーションプロパティを利用
	var test3 = Titanium.API.info(Ti.App.Properties.getString('message'));
	alert(test3);
})
*/

/*
var tab1 = Titanium.UI.createTab({  
    icon:'dark_appcelerator.png',
    title:'@appcelerator',
    window:win1
});

*/



//
// create controls tab and root window
//
var win2 = Titanium.UI.createWindow({  
    title:'@appcelerator_ja',
    backgroundColor:'#fff'
});
var tab2 = Titanium.UI.createTab({  
    icon:'dark_appcelerator.png',
    title:'@appcelerator_ja',
    window:win2
});

var label2 = Titanium.UI.createLabel({
	color:'#999',
	text:'I am Window 2',
	font:{fontSize:20,fontFamily:'Helvetica Neue'},
	textAlign:'center',
	width:'auto'
});

win2.add(label2);

//
// create controls tab and root window
//
/*
var win3 = Titanium.UI.createWindow({  
    title:'#Titanium',
    backgroundColor:'#fff',
    url:'win3.js'
});
var tab3 = Titanium.UI.createTab({  
    icon:'dark_pegman.png',
    title:'#Titanium',
    window:win3
});
*/

var tab3 = Titanium.UI.createTab({
	icon: 'dark_pegman.png',
	title: '#Titanium',
	window: Titanium.UI.createWindow({
		title: '#Titanium',
		backgroundColor: '#fff',
		url: 'tab2.js'
	})
});


//
// create controls tab and root window
//
var win4 = Titanium.UI.createWindow({  
    title:'#TitaniumJP',
    backgroundColor:'#fff'
});
var tab4 = Titanium.UI.createTab({  
    icon:'dark_pegman.png',
    title:'#TitaniumJP',
    window:win4
});

var label4 = Titanium.UI.createLabel({
	color:'#999',
	text:'I am Window 2',
	font:{fontSize:20,fontFamily:'Helvetica Neue'},
	textAlign:'center',
	width:'auto'
});

win4.add(label4);


Titanium.include('tab5.js');


/*
var win5 = Titanium.UI.createWindow({  
    title:'#Titanium',
    backgroundColor:'#fff',
    url:'win5.js'
});
var tab5 = Titanium.UI.createTab({  
    icon:'dark_search.png',
    title:'#Titanium',
    window:win5
});
*/



//
//  add tabs
//
tabGroup.addTab(tab1);
tabGroup.addTab(tab2);
tabGroup.addTab(tab3);  
tabGroup.addTab(tab4);   
tabGroup.addTab(tab5);   


// open tab group
tabGroup.open();


/*
if(Titanium.Network.online == false){
	alert('offline');
}else{
	var xhr = Titanium.Network.createHTTPClient();
	var url = "http://www.appcelerator.com/";
	//接続
	xhr.open('GET',url,false);
	
	//レスポンツを受け取るイベント(非同期に実行される)
	xhr.onload = function(){
		//Titanium Developerの画面にログを出力する
		Titanium.API.info(xhr.responseText);
	}
	xhr.onerror = function(error){
		//error message
	};
	//リクエストを送信
	xhr.send();
}
*/

titwitter.js

var TiTwitter = {};
(function(){
	//UI関連
	TiTwitter.UI = {};
	//本体となるTableViewはここに宣言しておく
	TiTwitter.UI.tableView = Titanium.UI.createTableView();
	
	//個々のTableViewRowを生成する
	TiTwitter.UI.createTableViewRow = function(tweet){
		var row = Titanium.UI.createTableViewRow();
		row.height = 180;
		row.add(Titanium.UI.createLabel({
			text:tweet.user.screen_name,
			top:8,
			left:64,
			height:16
		}));
		
		row.add(Titanium.UI.createLabel({
			text:tweet.text,
			top:32,
			left:64,
			width:256,
			height:'auto'
		}));
		
		row.add(Titanium.UI.createImageView({
			image:tweet.user.profile_image_url,
			top:8,
			left:8,
			width:48,
			height:48
		}));
		
		/*3-7-3アプリケーション連携ここから*/
		//ここでタイムラインの表示をクリックするとウェブページへ飛ぶようにする
		/*
		row.tweet = tweet;
		row.addEventListener('click',function(e){
			var t = e.rowData.tweet;
			var url = 'http://twitter.com/' + t.user.screen_name + '/status/' + t.id_str;
			Titanium.Platform.openURL(url);
		});
		*/
		/*3-7-3アプリケーション連携ここまで*/
		
		////3−7−3 ここから
		row.tweet = tweet;
		row.addEventListener('click',function(e){
			
			//alert(e.rowData.tweet);
			//Ti.API.info(e);
			var t = e.rowData.tweet;
			
			var url = 'http://twitter.com/' + t.user.screen_name + '/status/' + t.id_str;
			
			//選択ダイアログの生成
			var dialog = Titanium.UI.createOptionDialog({
				//タイトル(プロンプト)
				title: '処理を選択してください。',
				//ボタンの配置(ちなみに配列なので0オリジンでindexを持つ)
				options:["safari","Twiter for iPhone","E-mail","キャンセル"],
				//キャンセルボタンは見た目を変えることができる
				cancel:3
			});
			
			//ボタン選択時の処理はイベントハンドラを記述
			dialog.addEventListener('click',function(e){
				//キャンセルのときはe.cancel === trueとなる
				if(e.cancel === true){
					alert("cancel");
					return;
				}
				//ボタン選択時挙動
				if(e.index == 0){
					//alert("0");
					
					Titanium.Platform.openURL(url);
				}
				else if(e.index == 1){
					//alert("1");
					Titanium.Platform.openURL('twitter:' + url);
				}
				else if(e.index === 2){
					(function(){
						//メール送信用のダイアログウィンドウを表示する準備
						var emailDialog = Titanium.UI.createEmailDialog();
						//題名の初期値をセット
						emailDialog.subject = 'Twitter';
						//本文の初期値をセット
						emailDialog.messageBody = tweet.text + "\n" + url;
						//ダイアログを開く
						emailDialog.open();
					})();
				}
			});
			dialog.show();
		});
		
		////3−7−3 ここまで
		
		return row;
		
		
	};
	
	
	

	//プラットフォーム依存部を場合分けで記述する
	TiTwitter.UI.setRefreshButton = function(callback){
		//(ios)ウィンドウの右上ボタンを設定
		var rightButton = Titanium.UI.createButton({
			systemButton: Titanium.UI.iPhone.SystemButton.REFRESH
		});
		Titanium.UI.currentWindow.rightNavButton = rightButton;
		rightButton.addEventListener('click',function(){
			callback();
		});	
	};
	//TwitterAPIを非同期で呼び出す
	TiTwitter.callAPI = function(method,url,params,callbackOnLoad){
		//ネットワークが使用できないときはエラーメッセージを表示する
		if(Titanium.Network.online == false){
			
			//エラー表示
			alert('offline2');
			return;
			
				/*
				//オフラインでも開発用
				var offlineDATA = {
				    contributors : null,
				    coordinates : null,
				    "created_at" : "Sat Jul 30 01:19:17 +0000 2011",
				    favorited : 0,
				    geo : null,
				    id : "9.711400258437939e+16",
				    "id_str" : 97114002584379392,
				    "in_reply_to_screen_name" : null,
				    "in_reply_to_status_id" : null,
				    "in_reply_to_status_id_str" : null,
				    "in_reply_to_user_id" : null,
				    "in_reply_to_user_id_str" : null,
				    place : null,
				    "retweet_count" : 0,
				    retweeted : 0,
				    source : "<a href=\"http://twipple.jp/\" rel=\"nofollow\">ついっぷる for iPhone</a>",
				    text : "オフライン用テスト情報",
				    truncated : 0,
				    user : {
				        "contributors_enabled" : 0,
				        "created_at" : "Sun Jan 16 00:30:01 +0000 2011",
				        "default_profile" : 1,
				        "default_profile_image" : 0,
				        description : "\U30b7\U30a7\U30a2\U30cf\U30a6\U30b9\U3092\U3053\U3088\U306a\U304f\U611b\U3059\U308b\U7537\U3002\n\U5c71\U767b\U308a\U3001\U4e0d\U52d5\U7523\U6295\U8cc7\U3001\Uff26\Uff38\U3001\U5730\U4e0b\U6c34\U3001\U30bf\U30a4\U8a9e\U3001\U30d0\U30c3\U30af\U30d1\U30c3\U30ab\U30fc\U65c5\U884c\U7b49\U8208\U5473\U304c\U3042\U308a\U307e\U3059\U3002\U305d\U308d\U305d\U308d\U4e16\U754c\U4e00\U5468\U884c\U304d\U305f\U3044\Uff01\U904b\U304c\U3044\U3044\U7cfb\U3002\n",
				        "favourites_count" : 111,
				        "follow_request_sent" : 0,
				        "followers_count" : 254,
				        following : 1,
				        "friends_count" : 304,
				        "geo_enabled" : 0,
				        id : 238766156,
				        "id_str" : 238766156,
				        "is_translator" : 0,
				        lang : "ja",
				        "listed_count" : 4,
				        location : "\U5343\U8449\U770c\U8239\U6a4b\U5e02",
				        name : "ゆうし",
				        notifications : 0,
				        "profile_background_color" : "C0DEED",
				        "profile_background_image_url" : "http://a0.twimg.com/images/themes/theme1/bg.png",
				        "profile_background_image_url_https" : "https://si0.twimg.com/images/themes/theme1/bg.png",
				        "profile_background_tile" : 0,
				        "profile_image_url" : "http://a2.twimg.com/profile_images/1307306462/image_normal.png",
				        "profile_image_url_https" : "https://si0.twimg.com/profile_images/1307306462/image_normal.png",
				        "profile_link_color" : "0084B4",
				        "profile_sidebar_border_color" : "C0DEED",
				        "profile_sidebar_fill_color" : "DDEEF6",
				        "profile_text_color" : "333333",
				        profile_use_background_image:1,
						"protected" :0,
						screen_name : "baanyushi",
				        "show_all_inline_media" : 0,
				        "statuses_count" : 2300,
				        "time_zone" : "Tokyo",
				        "url" : null,
				        "utc_offset" : 32400,
				        verified : 0
				    }
				};//offlineDATA
				//いったんテーブルをクリア
				alert("test");
				Titwitter.UI.tableview.data = [];
				//ROWをテーブルに追加
				var _row = Titwitter.UI.createTableRow(offlineDATA);
				Titwitter.UI.tableview.appendRow(_row);
				//オフラインでも開発用 end
				*/
				
		}
		//HTTPClientオブジェクトを生成
		var xhr = Titanium.Network.createHTTPClient();
		xhr.open(method,url,false);
		//レスポンスを受け取るイベント(非同期に実行される)
		xhr.onload = function(){
			callbackOnLoad(xhr.status,xhr.responseText);
		}
		//エラー発生時のイベント
		xhr.onerror = function(error){
			//errorにはエラー事由の文字列オブジェクトが入ります。
			alert(error);
		};
		//リクエスト送信
		if(params){
			xhr.send(params);
		}else{
			xhr.send();
		}
		
	};
	TiTwitter.loadUserTimeline = function(screenName){
		var url = 'http://api.twitter.com/1/statuses/user_timeline.json?screen_name=' + screenName;
		TiTwitter.callAPI('GET',url,null,function(status,responseText){
			//データをクリア
			TiTwitter.UI.tableView.data = [];
			//受け取ったJSONをパース
			var json = JSON.parse(responseText);
			for (var i=0; i < json.length; i++) {
				TiTwitter.UI.tableView.appendRow(TiTwitter.UI.createTableViewRow(json[i]));
			};
		});
	};
	//検索結果を取得する
	TiTwitter.loadSearchResult = function(queryString){
		var url = 'http://search.twitter.com/search.json';
		TiTwitter.callAPI('GET',url,{q:queryString},function(status,responseText){
			//データをクリア
			TiTwitter.UI.tableView.data = [];
			//受け取ったJSONデータをパース
			var json = JSON.parse(responseText);
			//alert(json.results.length);
			
			for (var i=0; i < json.results.length; i++) {
				
				//レイアウトの違いを吸収
				var tweet = json.results[i];
				tweet.user = {};
				tweet.user.screen_name = tweet.from_user;
				tweet.user.name = tweet.from_user;
				tweet.user.profile_image_url = tweet.profile_image_url;
				TiTwitter.UI.tableView.appendRow(TiTwitter.UI.createTableViewRow(tweet));
			};
		});
	};

})();

tab1.js

// tab1.js
var win = Titanium.UI.currentWindow;
// 公式アカウントの一覧
var tableView = Titanium.UI.createTableView({
	data : [{
		title: '@appcelerator',
		url: 'win1.js',
		hasChild: true
	}/*,{
		title: '@appcelerator_ja',
		url: 'win2.js',
		hasChild: true
	}*/
	]
});
win.add(tableView);

// TableView選択時のイベント
tableView.addEventListener('click', function(e) {
	// TableViewRowの各データにアクセスするにはe.rowDataを介する
	var newWindowUrl = e.rowData.url;
	var newWindow = Titanium.UI.createWindow({
		title: e.row.title,
		backgroundColor: '#fff',
		url: newWindowUrl
	});
	Titanium.UI.currentTab.open(newWindow);
});

tab2.js

// tab2.js
var win = Titanium.UI.currentWindow;
// 公式アカウントの一覧
var tableView = Titanium.UI.createTableView({
	data : [{
		title: '#titanium',
		url: 'win3.js',
		hasChild: true
	}/*,{
		title: '#titaniumJP',
		url: 'win4.js',
		hasChild: true
	}*/
	]
});
win.add(tableView);

// TableView選択時のイベント
tableView.addEventListener('click', function(e) {
	// TableViewRowの各データにアクセスするにはe.rowDataを介する
	var newWindowUrl = e.rowData.url;
	var newWindow = Titanium.UI.createWindow({
		title: e.row.title,
		backgroundColor: '#fff',
		url: newWindowUrl
	});
	Titanium.UI.currentTab.open(newWindow);
});

tab5.js

// tab5.js
var tab5 =  Titanium.UI.createTab({
	icon: 'dark_search.png',
	title: '検索',
	window: Titanium.UI.createWindow({
		title: '検索',
		backgroundColor: '#fff',
		url:'win5.js'
	})
});

win1.js

//win1.jsのwindowを変数にセット
var win = Titanium.UI.currentWindow;

//ライブラリの読み込み
Titanium.include('titwitter.js');

//TableViewの追加
win.add(TiTwitter.UI.tableView);

//再読み込みの設定
TiTwitter.UI.setRefreshButton(function(){
	TiTwitter.loadUserTimeline('appcelerator');
});

//初回読み込み
TiTwitter.loadUserTimeline('appcelerator');

win3js

var win = Titanium.UI.currentWindow;

//ライブラリの読み込み
Titanium.include('titwitter.js');

//TableViewの追加
win.add(TiTwitter.UI.tableView);

//再読み込みの設定
TiTwitter.UI.setRefreshButton(function(){
	TiTwitter.loadsearchResult('#Titanium');
});
//初回読み込み
TiTwitter.loadSearchResult('#Titanium');


/*

var tableView = Titanium.UI.createTableView();
win.add(tableView);

//@appceleratorのtweetを取得
var url = 'http://search.twitter.com/search.json';


var refreshTimeline = function(){
	//alert("読み込むよ!");
	if(Titanium.Network.online != false){
		//HTTPclientオブジェクト生成
		var xhr = Titanium.Network.createHTTPClient();
		xhr.open('GET',url,false);
		//レスポンスを受け取るイベント(非同期に実行させる)
		xhr.onload = function(){
			//表示内容をいったんクリアする
			tableView.data = [];
			
			//受け取ったJSONデータをパース
			var json = JSON.parse(this.responseText);
			//JSON構造が違うため、json.lengthではなく、json.results.length
			for(var i=0; i<json.results.length; i++){
				var tweet = json.results[i];
				tweet.user = {};
				tweet.user.screen_name = tweet.from_user;
				tweet.user.name = tweet.from_user;
				tweet.user.profile_image_url = tweet.profile_image_url;
				//ここからは基本的に同じ
				
				var row = Titanium.UI.createTableViewRow();
				row.height = 180;
				row.add(Titanium.UI.createLabel({
					//tweet変数を経由して取得する
					text:tweet.user.screen_name,
					top:8,
					left:64,
					height:16
				}));
				row.add(Titanium.UI.createLabel({
					text:tweet.text,
					top:32,
					left:64,
					width:256,
					height:'auto'
				}));
				row.add(Titanium.UI.createImageView({
					image:tweet.user.profile_image_url,
					top:8,
					left:8,
					width:48,
					height:48
				}));
				tableView.appendRow(row);
			}	
		};
		//error
		xhr.onerror = function(error){
			//error message
			alert(error);
		};
		//send
		xhr.send({
			q:'#Titanium',
			lang:'ja',
			locale:'ja'
		});
	}else{
		//error
		alert('offline');
	}

}
refreshTimeline();




//ウィンドウの右上のボタンを設定
var rightButton = Titanium.UI.createButton({
	//title:'再読込'
	systemButton:Titanium.UI.iPhone.SystemButton.REFRESH
});

win.rightNavButton = rightButton;
rightButton.addEventListener('click',function(){
	//alert('onbt');
	refreshTimeline();
});
*/

win5js

var win = Titanium.UI.currentWindow;


Titanium.include('titwitter.js');

//SearchBarとTableViewの追加

var searchBar = Titanium.UI.createSearchBar({
	showCancel:true,
	height:43,
	top:0
});


TiTwitter.UI.tableView.top = 43;
win.add(searchBar);
win.add(TiTwitter.UI.tableView);

//再読み込みの設定
TiTwitter.UI.setRefreshButton(function(){
	TiTwitter.loadSearchResult(searchBar.value);
});


//検索開始とキーボートを閉じるイベントを設定する
searchBar.addEventListener('cancel',function(){
	searchBar.blur();
});

searchBar.addEventListener('return',function(){
	//検索語の保存
	Titanium.App.Properties.setString('query_string',searchBar.value);
	searchBar.blur();
	TiTwitter.loadUserTimeline(searchBar.value);
});

//保存された検索語があれば初期表示
if (Titanium.App.Properties.getString('query_string',null) != null) {
	searchBar.value = Titanium.App.Properties.getString('query_string');
	TiTwitter.loadUserTimeline(searchBar.value);
};





/*
var win = Titanium.UI.currentWindow;

var searchBar = Titanium.UI.createSearchBar({
	showCancel:true,
	height:43,
	top:0
});
var tableView = Titanium.UI.createTableView({
	top:43
});
win.add(searchBar);
win.add(tableView);

//@appceleratorのtweetを取得
var url = 'http://search.twitter.com/search.json';


var refreshTimeline = function(){
	//alert("読み込むよ!");
	if(Titanium.Network.online != false){
		//HTTPclientオブジェクト生成
		var xhr = Titanium.Network.createHTTPClient();
		xhr.open('GET',url,false);
		//レスポンスを受け取るイベント(非同期に実行させる)
		xhr.onload = function(){
			//表示内容をいったんクリアする
			tableView.data = [];
			
			//受け取ったJSONデータをパース
			var json = JSON.parse(this.responseText);
			//JSON構造が違うため、json.lengthではなく、json.results.length
			for(var i=0; i<json.results.length; i++){
				var tweet = json.results[i];
				tweet.user = {};
				tweet.user.screen_name = tweet.from_user;
				tweet.user.name = tweet.from_user;
				tweet.user.profile_image_url = tweet.profile_image_url;
				//ここからは基本的に同じ
				
				var row = Titanium.UI.createTableViewRow();
				row.height = 180;
				row.add(Titanium.UI.createLabel({
					//tweet変数を経由して取得する
					text:tweet.user.screen_name,
					top:8,
					left:64,
					height:16
				}));
				row.add(Titanium.UI.createLabel({
					text:tweet.text,
					top:32,
					left:64,
					width:256,
					height:'auto'
				}));
				row.add(Titanium.UI.createImageView({
					image:tweet.user.profile_image_url,
					top:8,
					left:8,
					width:48,
					height:48
				}));
				tableView.appendRow(row);
			}	
		};
		//error
		xhr.onerror = function(error){
			//error message
			alert(error);
		};
		//send
		xhr.send({
			q:searchBar.value,
			lang:'ja',
			locale:'ja'
		});
	}else{
		//error
		alert('offline');
	}

}
refreshTimeline();




//ウィンドウの右上のボタンを設定
var rightButton = Titanium.UI.createButton({
	//title:'再読込'
	systemButton:Titanium.UI.iPhone.SystemButton.REFRESH
});

win.rightNavButton = rightButton;
rightButton.addEventListener('click',function(){
	//alert('onbt');
	refreshTimeline();
});


//検索開始とキーボートを閉じるイベントを設定する
searchBar.addEventListener('cancel',function(){
	searchBar.blur();
});

searchBar.addEventListener('return',function(){
	//検索語の保存
	Titanium.App.Properties.setString('query_string',searchBar.value);
	searchBar.blur();
	refreshTimeline();
});

//保存された検索語があれば初期表示
if (Titanium.App.Properties.getString('query_string',null)) {
	searchBar.value = Titanium.App.Properties.getString('query_string');
	refreshTimeline();
};
*/

このページへのコメント

hello Wholesale Costumes !
Junlin Wholesale Sexy Lingerie,Swimwear and Wholesale costumes products more 1300+ styles,China Costumes and Lingerie Supplier,fast shipping worldwide from China.
WebSite:<a href="www.4slingerie.com">Costumes</a>
www.4slingerie.com

0
Posted by gz4slingerie 2014年02月26日(水) 14:22:09 返信

<a href="http://airmax90baratas.bestbuy-goods.com">Nike Air Max 90 Baratas</a> <a href="http://airmax90baratas.bestbuy-goods.com">Nike Air Max 90</a> asociado sustantivo Vellutato & Divisa . realmente es un poco puede ser lleno el mundo del afecto , típicos , cultura y Medio oriental flujo de aire . Anuncios de número de otoño de acusar de de votre Jia clase excede algún tipo de algún modelo para dar Oferta usted busca justo por bastantes , es
<a href="http://bottesuggpascher.buy-outlet.com">bottes ugg</a> <a href="http://bottesuggpascher.buy-outlet.com">bottes ugg</a> Grazia publicación moda en Important

0
Posted by Frernnits 2013年12月21日(土) 20:32:54 返信

d3pfka <a href="http://wacajbvlazzx.com/">wacajbvlazzx</a>, [url=http://umpqkovvczcy.com/]umpqkovvczcy[/url], [link=http://lgkfgjdtuwuv.com/]lgkfgjdtuwuv[/link], http://amjshgupywhd.com/

0
Posted by lreryauzxs 2013年11月20日(水) 09:48:22 返信

TZHi9O <a href="http://zfqbknypynvt.com/">zfqbknypynvt</a>, [url=http://bqxixspimyic.com/]bqxixspimyic[/url], [link=http://gpbxajzfvqnt.com/]gpbxajzfvqnt[/link], http://jvlxwpgnekui.com/

0
Posted by yqqldwxg 2013年11月14日(木) 21:09:37 返信

コメントをかく


「http://」を含む投稿は禁止されています。

利用規約をご確認のうえご記入下さい

Menu

メニューサンプル2

JSメモ

  • アイテム
  • アイテム
  • アイテム
【メニュー編集】

管理人/副管理人のみ編集できます