Fragmentを使う① - 単純なFragmentの実装 -

FragmentはActivityに設置するViewを機能ごとに小分けして、元来Activityに集中しがちだったロジックを細分化する方法です。 複数人で開発しているときはコンフリクトがおきにくいのでかなり便利ですね。 今回はFragmentの単純な例を実装してみました。 app/build.gradle annotationProcessor "org.androidannotations:androidannotations:+" implementation "org.androidannotations:androidannotations-api:+" app/build.gradle の dependencies にこの2行を追記して Sync now! MainActivityクラス package com.example.fragmenttest; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceSta…

続きを読む

TextView, EditTextの装飾

TextViewやEditTextを装飾する方法をまとめます。 方法は、drawble配下に装飾用の定義を記述したxmlファイルを用意しておき、Viewのバックグラウンドに指定するだけです。 xmlファイルを追加は、プロジェクトメニューの drawbleを右クリック → New → File で追加します。 ファイル名は任意で、view_frame.xmlとした場合、適用したいViewに以下のように設定します。 android:background="@drawble/view_frame" xmlファイルには、shapeタグとその子要素によって記述します。 どのように記述していくのかを見ていきます。 枠線をつける <?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android"> <stroke android:width="2dp" android:color="#232323" /> </shape> strokeタグでEditTextに枠線をつけます。 widthで線の幅、colorで色を指定できます。 …

続きを読む

Android Studio3でレイアウト(Design)が表示されない

Android Studio3にアップデートしてから、プロジェクトを新規作成した直後にレイアウトのDesignが何も表示されなくなってしまいました。 "Hello World!" のTextViewが一つ設置されているはずですがこれが表示されません。 また新たにViewを設置しても何も表示されません。 さらに既存プロジェクトでも同様の事象が発生しており非常に不便です。 これはstyle.xmlで指定しているThemeに問題があります。 style.xml(修正前) 次のように修正することで解消することができます。 parentに設定している Theme.AppCompat.Light.DarkActionBar を Base.Theme.AppCompat.Light.DarkActionBar へ変更します。 style.xml(修正後)

続きを読む

うるう年の判定

任意の西暦がうるう年かどうかを判定する方法をまとめます。 判定の仕様としては以下になります。 1.西暦年数が4で割り切れる年は原則として「うるう年」にする。 2.上記の例外として、西暦年数が100で割り切れる年は「平年」とする。 3.さらに例外として、西暦年数が400で割り切れる年は「うるう年」にする。 この規則に従うと2000年はうるう年になりますが、2100年、2200年は平年になりますね。 詳しくは以下の記事を参考にしてください。 http://www.astroarts.co.jp/news/1999/03/990325NAO246/index-j.shtml ソースコード public static void main(String[] args) {     for(int year = 1995; year < 2005; year++) {         System.out.println(year + "年:" + (isLeapYear(year) ? "うるう年" : "平年"));     } System.out.println("--------------------");     for(int year = 2095; year < 2105; year++) {         System.out.println(year + "年:" + (isLeapYe…

続きを読む

JSONファイルの読み込み

JSONファイルの内容を読み込む方法です。 JSONの内容はItemクラスをList形式で保存したものです。 Itemクラス public class Item { private long id; private String name; public void setId(long id) { this.id = id; } public long getId() { return id; } public void setName(String name) { this.name = name; } public String getName() { return name; } } JSONファイル [ { "id": 1, "name": "Apple" }, { "id": 2, "name": "Orenge" }, { "id": 3, "name": "Banana" } ] JSONファイルのパースとListオブジェクトの…

続きを読む

スポンサーリンク