2012年6月16日土曜日

半透明Activityのフェードイン・フェードアウト

Activityを半透明にする方法と、Activityのアニメーションを適用する方法、どちらか片方には出来ても、両方実現する方法はなかなか載ってなくて苦労したので書いておきます。


まずは半透明化

これは調べればすぐできるとは思いますが、
<?xml version="1.0" encoding="utf-8"?>
<resources>
    <drawable name="translucent_background">#88000000</drawable>
    <style name="Style.translucent" parent="android:style/Theme.Translucent">
        <item name="android:windowBackground">@drawable/translucent_background</item>
    </style>
</resources>
こんな感じのを作って、ManifestでActivityのThemeに設定するだけです。

アニメーションはThemeにはしない

いろいろ検索してみた結果、Activtyにアニメーションをつけるとき、
    <style name="Style.Alpha" parent="android:Animation.Activity">
        <item name="android:activityOpenEnterAnimation">@anim/activity_fadein</item>
        <item name="android:activityOpenExitAnimation">@anim/activity_fadeout</item>
        <item name="android:activityCloseEnterAnimation">@anim/activity_fadein</item>
        <item name="android:activityCloseExitAnimation">@anim/activity_fadeout</item>
    </style>
こんな感じのを作ってThemeに設定するのが主流のようですが、上記ではなくまた別の方法を使います。

とりあえずはanimationの作成です。今回はフェードイン・アウトで。
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android" android:interpolator="@android:anim/accelerate_interpolator">
    <alpha xmlns:android="http://schemas.android.com/apk/res/android"
        android:fromAlpha="0.0"
        android:toAlpha="1.0"
        android:duration="700"
        android:fillAfter="true"
        android:fillEnabled="true"/>
</set>
フェードアウトはコレのfromAlphaとtoAlphaの値を入れ替えたものをもう一つ作成。

そして、アニメーションさせたいActivityのコードに少し付け足します。
- package, import部省略 -
public class Activity extends Activity {
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        overridePendingTransition(R.anim.activity_fadein, R.anim.activity_fadeout);
    }
    
    @Override
    public void onPause() {
     super.onPause();
        overridePendingTransition(R.anim.activity_fadein, R.anim.activity_fadeout);
    }
}
注目するのは7行目と13行目です。
overridePendingTransition に、先ほど作成したAnimationを指定しています。

onCreateの時に実行すると、フェードイン(第一引数)のアニメーションが実際に動き、
onPauseの時に実行すると、フェードアウト(第二引数)のアニメーションが実際に動くようです。

つまり、7行目の「R.anim.activity_fadeout」と、
13行目の「R.anim.activity_fadein」はおそらく意味がありません(笑)
なので、それぞれ「0」でも結構です(未検証)。

おわりに

もしかしたらThemeで半透明とアニメーションを両立させる方法があるのかもしれません。
知ってる方は教えてくれるとうれしいです。

2012年6月10日日曜日

他の鯖のファイルを落として自鯖に上げるだけのツール


最近、新しいHPの制作をしています。
そこで、このブログの記事一覧をHPにちょこっと表示しようと思って、
いろいろjqueryプラグインだったりを探してみたんですが、
結局これといったものは見つからず、
半分自分で作るハメになりました。

んで、それをテストしている途中に問題に衝突。

なぜかRSSの取得が完了しない。

これは自分の方のバグではなさそうだと思って調べてみると、
どうやらAjaxにはクロスドメイン制限というものがあり、
ブラウザがセキュリティ保護のために、違うドメインへのアクセスを禁止してるらしいです。

めんどくせぇぇぇぇぇぇぇぇぇぇぇぇぇぇっぇええぁぇkfjk;;あおせrひたrtg「

なにがセキュリティだ!!!!


…と、言いたいところですが、逆らうわけにもいかず、回避するほうほうを色々検索。
Google AJAX Feed APIを使う方法や、CGI Proxyを使う方法などがありましたが、

結局いまいち。

仕方ないので、Bloggerで記事を書いたあとに、
BloggerのRSSをダウンロードして、HPと同じサーバーにアップロードすることに。

んで、それを自動化したものが、今回作った「RSSupdater」です。
個人用に作ったんですが、せっかくなので公開してみます。






使い方

RSSupdaterは、引数を4つ指定することで動作します。
1.ダウンロード元のURL(プロトコルはhttp)
2.アップロード先のURL (プロトコルはftp
3.ftpのユーザー名
4.パスワード

例えば、こんな感じです。

C:\RSSupdater\RSSupdater.exe http://hogehogeaiueo.blogspot.jp/feeds/posts/default/ ftp://www.myhomepage.jp/feeds.xml aakjsfh c5fd4d

↑こんな感じでショートカットを作って置いておくと便利かと思います。
あくまで一例なので、どこにRSSupdater.exeを置いたかなどによって変わります。
自分で適宜変更してください。
※もう一度言いますが、ダウンロード元は「http://」、アップデート先は「ftp://」です!



ダウンロード

RSSを更新するように作ったRSSupdaterですが、RSSに限らずテキストファイルならなんでもOKだと思います! (バイナリはたぶんできない)

ぜひご利用くださいー。

ダウンロード(.zip 9.27KB 自動バージョンアップデートなし .NET Framework 4が必要)

なお、ダウンロードした場合、下の「注意」の内容に同意したものとします。

注意

・C:\Program Files または C:\Program Files(x84) にRSSupdaterフォルダを置くと、 エラーが発生する恐れがあります。 その時はフォルダを移動するか管理者権限で実行してください。

・悪用厳禁!

・このアプリケーションによって何か被害が出た場合でも、自分は責任を負いません。

2012年6月8日金曜日

Bloggerを始めてからここ数日で弄ったこと

去年から一応開設はしていたこのブログ、
ついこの間からようやく本格的に始めようと考え、
3日間ほど結構Bloggerいじってました。

その弄ったものをちょっとまとめてみたいと思います。


2012年6月6日水曜日

とりあえず自己紹介

とりあえずブログ新しく始めたので、自己紹介とかしようと思いますー

基本ステータス

名前:wararyo
誕生日:3/10
年齢:15歳(2012 6/6現在)
住所:熊本市■■■
高校:教えられるわけない

詳しくは、HPを新しくした時にまた書きます。


このブログで主に書くこと

このブログでは、主に4つの事を書いていきます!

1.Windows関係(主にC#)
  C#でWindowsアプリケーションを作っていきます。
  これは中学校の頃からやってるので比較的慣れてます。

2.Android関係
 高校に入ってからGalaxySII WiMAXを買ってもらったので、
 それを使って自分が欲しいと思ったアプリを作っていきます。
 Javaきもい。

3.電子工作(主にAVR)
 中学の頃から2年間憧れ続けていた電子工作を、
 高校に入ってからやっと始められることになりました。
 これは手先の器用さとかも関わってくるので少し大変ですが、
 頑張ります(`・ω・´)シャキーン

4.その他どうでもいいこと
 割とどうでもいいこととかです。


このブログ自体どうでもいいものなんじゃないかって言われたら返す言葉がないですけどorz

主にAndroidとAVRが中心になってくると思います。

高校の勉強や部活は忙しいけども、
なんとか合間を縫って更新していきますヽ(´ー`)ノ

2012年6月5日火曜日

とりあえず公開

結構前から作ってはいたものの、全く手付かずのままだったこのブログでしたが、
とりあえず公開してみました。

本当は、新しいHPと、デザインが同じになるようにテンプレいじってから公開しようと考えてたけど、
目標を高く持ちすぎて面倒くさくなって結局放置という例のパターン
(自分は生まれてから15年間、この経験を何度もしてきましたorz)
 を防ぐため、とりあえず妥協ということで、
ヘッダー画像だけさっさと作って、他は標準のテンプレです。

後々改良していこうとは思いまーす

あと、しばらくは高校が忙しいので更新頻度低めかと。

Amazon