windowsメニューバーの解説
各ソフトの機能が集められたメニューです。「ファイル」や「編集」、「表示」などといったメニューがあり、クリックするとプルダウンメニューが表示されます。
メニューの機能はクリックで実行されます。設定を目的としたメニューではクリックするとチェックなどが付き、設定が反映されます。取り消すにはもう一度クリックします。
「ファイル(F)」の「(F)」は「Alt」+「F」でプルダウンメニューが表示、実行されることを表しています。
FrontPage
各ソフトの機能が集められたメニューです。「ファイル」や「編集」、「表示」などといったメニューがあり、クリックするとプルダウンメニューが表示されます。
メニューの機能はクリックで実行されます。設定を目的としたメニューではクリックするとチェックなどが付き、設定が反映されます。取り消すにはもう一度クリックします。
「ファイル(F)」の「(F)」は「Alt」+「F」でプルダウンメニューが表示、実行されることを表しています。
FrontPage
日本語で検索してもぱっと出てこなかったので、
備忘録として書いておきます。
まずはどっかからギャラリーを起動させる
//ギャラリーの起動 Intent intent = new Intent(Intent.ACTION_GET_CONTENT); intent.setType("image/*"); startActivityForResult(Intent.createChooser(intent, "Select picture"), sukina_number);
sukina_numberは好きな数字入れてください。
ギャラリーから選択した画像のタイトルを適当なテキストビューに代入するメソッド
private void onActivityResult(int requestCode, int resultCode, Intent data) { if (resultCode == RESULT_OK) { if (requestCode == sukina_number_de_set_sita_number) { File f = new File(getRealPathFromURI(data.getData())); tekitouna_text_view.setText(f.getName()); } } }
ギャラリーで画像を選択した後はonActivityResultが呼ばれます。
requestCodeには自分でstartActivityForResultの第二引数に入れた値が入っていますので、うまく利用して条件分けすることも可能です。
で、一番大事なのが
File f = new File(getRealPathFromURI(data.getData())); tekitouna_text_view.setText(f.getName());
これですね。
ギャラリーで選択した画像のURIをなんとかファイル型にして名前getできるようになった!って感じです。
yumでインストールしたパッケージのファイル一覧を表示するにはrepoqueryを使います。
repoqueryはyum-utilsに含まれています。
yum install yum-utils
パッケージに含まれるファイル一覧を表示するには下記コマンドを実行します。
repoquery --list パッケージ名
repoqueryの実行例です。
repoquery --list yum /etc/bash_completion.d /etc/bash_completion.d/yum.bash /etc/logrotate.d/yum /etc/yum /etc/yum.conf /etc/yum.repos.d /etc/yum/pluginconf.d /etc/yum/protected.d /etc/yum/vars /etc/yum/version-groups.conf /usr/bin/yum ...
プロジェクト自体に「!(エクスクラメーション)」または、「×(エラーマーク)」が付いていて、原因が「google-play-servise」が反映されていない時の対処法
以下を見よ!!!(☆д・)
*「Android SDK Manager」は、メニューバー ⇒ Window ⇒ Android SDK Manager
インストールされていなかったら、インストールしてくださーい(●-ω-)
それで、そのディレクトリをコピーしておきます。
*インストールが完了(もしくは既にインストールしていた方)は、何もないプロジェクトの箇所に、「google-play-servise」を表示させます。
3.何もないプロジェクトの場所で、右クリ ⇒ 「import」⇒「Android」 ⇒ 「Existing Android Code Into Workspace」⇒「Next」⇒「Root Directory」の中に先程コピーした「Google Play services」が入っているディレクトリを記載します。記載できたら「finish」をクリックします。そうすると、「Google Play services」というプロジェクトが新たに追加されます。
*参考までに、私のディレクトリは、
「C:\adt-bundle-windows-x86_64-20130219\sdk\extras\google\google_play_services\libproject」というところでしたよ!
ここまできたらあと一息です ε=(・o・*) フゥ
がんばりましょう (´p・ω・q`)ガンバ♪
4.「Google Play services」を適用させたいプロジェクトを 右クリ ⇒「Properties」⇒ サイドバーから「Android」⇒「Library」で、既に「Google Play services」がある人は、「Remove」して一度削除します。
何も書かれていない方、または、削除した方は、「Add」で、プロジェクトの「Google Play services」⇒「OK」⇒「Apply」⇒「OK」で完了です。
5.それでも消えない場合は、google play servicesのほうに問題があります。EclipseのConsoleなどに、エラーが表示されていませんか?
たとえば、API8のSDKがないと、google play service自体がエラーになってしまっているので、API8のSDKを「Android SDK Manager」でダウンロードしましょう。
なかなか設定するだけで一苦労ですね~ ;´д`)
これにめげずに、皆さん頑張りましょう (゚ー゚☆
カテゴリーを使えば、クラスが持つメソッドを、カテゴリごとに分類することができます。
ということは、大きいクラスの実装を、複数のファイルに分割できるということですね。
// Japaneseクラスの宣言 @interface Japanese : NSObject { // インスタンス変数 NSString* title; } - (NSString*)title; - (void)setTitle:(NSString*)title; @end // Japaneseクラスの Katakana カテゴリ @interface Japanese ( Katakana ) - (void)writeToFile:(NSString*)path; - (void)readFromFile:(NSString*)path; @end
@interface クラス名 ( カテゴリー名 ) と書きます。
カテゴリー側で独自のインスタンスを宣言する必要はありません。
他クラスからは、
Japanese* ja = [[Japanese alloc] init]; ja.title = @"test"; [ja readFromFile: @"test"]; [ja writeToFile: @"test"];
というように使えます。
実行中、動的に既存のクラスにメソッドを追加していくことができるのですが、カテゴリーにはこの機能があります。
カテゴリーによって分割されたクラスは、各々別のオブジェクトとしてコンパイルされます。
その後、これらが実行時に読み込まれ、カテゴリーで宣言されているメソッドがクラスに追加されていきます。
自分でつくったクラスだけでなく、Cocoaが提供するクラスに対しても可能です。
例えば、NSString。
// NSStringの新たなカテゴリの宣言 @interface NSString (TrimNewLine) - (BOOL)hasNewLineCharacters; - (NSString*)stringByTrimmingNewLineCharacters; @end @implementation NSString (TrimNewLine) - (BOOL)hasNewLineCharacters { // 改行コードが含まれていたら、YESを返す …… }
- (NSString*)stringByTrimmingNewLineCharacters { // 改行コードを除去した文字列を返す …… } @end
これで、以下のように追加したメソッドを簡単に利用することができます。
NSString* string = @"string\nです。"; if ([string hasNewLineCharacters]) { NSLog(@"%@",[string stringByTrimmingNewLineCharacters]); }