Android SDKで、ListViewにフェードアウトを表示させる

正確にはフェードアウトというより、リストをスクロールさせた時にできる
影の表示のこと。

<ListView
    android:id="@+id/listView1"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:requiresFadingEdge="vertical"
    android:fadingEdgeLength="12dp"
    android:cacheColorHint="#22333333"
>
</ListView>

ICS以前では

android:fadingEdge="none"

ICS以降では

android:requiresFadingEdge="horizontal"

で表示または非表示を設定できる。


  • オプションの設定
android:cacheColorHint="#ffffffff"

でカラーの設定。

android:fadingEdgeLength="10dp"

でフェードアウトの長さを設定。


リファレンスも参照するとよい。

Android SDKで、Java側からViewのColorを指定する

Java側からViewの色を変更せざるを得ない時に使うと思う。
Androidで色を指定するメソッドを羅列しておく。

public int getColor() {
    int color = 0;

    // graphics.Colorから取得。しかし種類が少ない。
    color = android.graphics.Color.TRANSPARENT;

    // アプリプロジェクト/res/values/colors.xmlで自分の定義した色を取得
    color = R.Color.my_red;

    // rgbの値から色を取得。
    color = android.graphics.Color.rgb(204, 0, 0);

    // カラーコードから取得。透明度も自在に指定でき便利。
    color = android.graphics.Color.parseColor("#99000000");

    return color;
}

colors.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <color name="black">#000000</color>
    <color name="transparent_black">#44000000</color>
</resources>
  • Androidのカラーコードについて

16進数で表現。
透明度(2桁)・R(2桁)・G(2桁)・B(2桁)の順。
透明度はあってもなくてもどっちでもよい。

Ubuntu13.04×MySQL5.5.3xでServerCharacterSetをUTF-8にしたい

Server CharacterSetがlatin1になっている。

これをutf8にしたい時は

$ sudo vim /etc/mysql/my.cnf

で[mysqld]部分に

[mysqld]
character-set-server = utf8

と追記。

$ sudo service mysql restart

してから

mysql> status

で確認。

古い資料を読んでいて、はじめ
default-character-set
でやっていて立ち上がらずに詰まった。

5.5から変わったとからしい。

CORESERVERでPerlをCGIで動かすときのエラー対処

CGIWrap Error: Script Execution Failed

CGIWrap encountered an error while attempting to execute this script:

Error Message: No such file or directory
Error Number: 2

というエラーは、スクリプトに問題がない場合、改行コードの可能性が高い。

まず改行コードを調べて、CR(¥r)が入っていないかを確認。
入っていたら削除して実行してみる。

文字コードや改行コードの扱いについては
Linux・UnixでWindowsクオリティなファイルを扱う際のメモ - 夜明け前に
を参照。

Linux・UnixでWindowsクオリティなファイルを扱う際のメモ

文字コードを調べる

$ nkf -g ファイル名


UTF-8(BOMなし)に変換

$ nkf -w80 入力ファイル名 > 新規出力ファイル名

※BOMありは-w8でOK


改行コード確認

$ od -c ファイル名

※CRは¥r、改行は¥n


改行コードを*nix系に変換【(CR+LF)→(LF)に】

$ tr -d '\r' < 入力ファイル名 > 新規出力ファイル名

※実際にはCRを消してるだけ


入力ファイル名と出力ファイル名が同じ場合はファイルの内容が消えるので注意。一度別ファイルとして保存してから名前変更とかするのが吉。

Ubuntu 13.04にOracleのJDK6,7,8を全部aptからインストールする

今までは結構Javaのインストールに苦労したので、aptから出来ればいいなと思っていたら、デキることを知ったのでメモ。

webup8というサイトがJava用にレポジトリを用意してくれたので、それを利用する。

$ sudo add-apt-repository ppa:webupd8team/java
$ sudo apt-get update

これで、JDKインストール準備完了。

$ sudo apt-get install oracle-java6-installer
$ sudo apt-get install oracle-java7-installer
$ sudo apt-get install oracle-java8-installer

これでOK。

$ java -version
$ javac -version

バージョン確認。


ちなみに

$ sudo update-alternatives --config java
$ sudo update-alternatives --config javac

でバージョンを自在に切り替え可能。

Ubuntu 13.04にGoogle Chromeをインストールする

やり方が特殊になったのでメモ。

13.04からlibudev0というパッケージがなくなったため、stable版がインストールできなくなった。
Chromeを実行するにはlibudev0が必要。
そのため、このパッケージをインストールしなければならない。

debをここから落としてインストールという選択もあるが、やはりaptを使うのが管理的にいいだろう。

aptからインストールするには下記手順を実行する。

$ sudo vim /etc/apt/sources.list

で下記をどこかに追加。

# original added libudev0
deb http://ftp.jaist.ac.jp/pub/Linux/ubuntu/ quantal main

追加したらあとは

$ sudo apt-get update
$ sudo apt-get install libudev0

でOK。これでlibudev0がインストールされた。


あとはChrome公式ページからdebファイルをダウンロードして

$ sudo dpkg -i <Chromeのdebファイル>

Chromeがインストールできる。

Ubuntu 13.04で、aptの公開鍵を追加または削除する

$ wget -q -O - <鍵のURL> | sudo apt-key add -

これで、標準出力に出た公開鍵が登録された。

$ sudo apt-key list


pub ****
uid ****
といった一覧が出る。このうちuidに表示されている部分を指定すれば、keyは削除できる。

$ sudo apt-key del <uidで表示される文字列>

TOSHIBA Portage R830(Dynabook R731)にUbuntu 13.04をインストールした

若干今更感があるが、Raring Ringtailをインストールした。
クリーンインストールした。
全体の雑感としては

  • OSの基本動作が12.10より1テンポ早い
  • 安定感が向上した
  • ファイルマネージャなどの基本ソフトの使い勝手が向上した
  • アイコンなどのデザインがナウい感じになった
  • 憧れのMac風タッチスクロールが標準設定でできるようになった

といったところ。

逆に困った点もやはり存在。

  • またディスプレイの輝度調整ができなくなった
  • libudev0がなくなった
  • com.canonial.unity.panelがなくなった

というところ。

問題点はおいおい解決すればいいので大目に見るとして
12.10の人にはおすすめです。

Ubuntu12.10でdhpys-swapは使わないほうがいい

マシン
Toshiba Portege R830
Storage:SSD
RAM:4GB(SingleChannel)
CPU:Core i5 2.4GHz

動的にSwap領域を作るらしいdhpys-swapをaptでインストールしてみたが、やたらSSDへのアクセスがあってこのまま使うとSSDの寿命が縮まりそうだった。

12.04から使えるらしいが、HDDでスワップパーティーションが遠いとかよほどの理由がない限り使わないほうが懸命だと思われる。