atelier:mitsuba

i love UI/UX, Blend, XAML, Behavior, P5, oF, Web, Tangible Bits and Physical computing. なにかあればお気軽にご連絡ください。atelier@c-mitsuba.com

インタラクション2011 1日目ー展示ー



線状のLEDをぐるぐる回して,球体ディスプレイを作ってるみたい.


モーターがひもに引っ張られて,3D空間の当たり判定と動機してる.
これ面白かったなぁ.


めっちゃ精度がいいらしいKINECT


フォグ3Dディスプレイ.
これが意外と3Dに見えてよかった.


タッチしたら,中のオブジェクトが2つのタッチパネルで動機されて動く




プレゼンを促すツール.
音声認識で3Dキャラクタがうなずいてくれる.
さらにKINECTで指示が出来る.


透明ディスプレイにより太陽に近いゆらめきをバックライトにしたディスプレイ


植木と会話して,現実世界の社交性を促すプロダクト



ルービックキューブみたいなアルバム



ARマーカーを使ったおみやげ評価提示アプリ


繋がり検索を商品を探すアプリ

Windows Phone 7 のはてなフォトライフビューワを作る (後編)

伊勢さんのWindows Phone 7 のはてなフォトライフビューワを作る (前編):http://d.hatena.ne.jp/iseebi/20110306/p1の続きです.
タイル風にレイアウトしてみました。




でもって、横向きにも対応しました。

あと、ページ遷移時にはタイトルを表示して、伊勢さんの画像の比率がおかしいのを直したあと、拡大とドラッグにも対応しました。

アイコンはこんな感じにしてみました。

伊勢さんがプロジェクトファイルを公開しているので、あたしも公開しておきますね。
xapデプロイしたらコメントとか付けてもらえると嬉しいです。
http://c-mitsuba.com/contents/FotolifeView.zip


次からだらだらとこのへんの実装の方法を書きます。

Windows Phone 7 のはてなフォトライフビューワを作る (後編)その1ータイトルを表示しようー

この記事はポイントポイントにばらして書いていこうと思います。

まずは、画面遷移後のページにタイトルを表示しましょう。
伊勢さんの画面遷移の所のコードを書き足します。

MainPage.xaml.cs
>>Before

        void photoListBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {	
            if (e.AddedItems.Count > 0)
            {
                HatenaFotolifeRssItem item = (HatenaFotolifeRssItem)e.AddedItems[0];
                NavigationService.Navigate(new Uri(string.Format("/ImagePage.xaml?image={0}", item.ImageUrl), UriKind.Relative));
            }
        }

>>After

        void photoListBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {	
            if (e.AddedItems.Count > 0)
            {
                HatenaFotolifeRssItem item = (HatenaFotolifeRssItem)e.AddedItems[0];
                NavigationService.Navigate(new Uri(string.Format("/ImagePage.xaml?image={0}&title={1}", item.ImageUrl, item.Title), UriKind.Relative));
            }
        }

追記した所は、URLでGETで投げてる所に、item.Titleを増やしただけです。

次に遷移先で受け取って、page nameを書き換えましょう。
ImagePage.xaml.csを書き換えます。

>>Before

        protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e)
        {
            if (NavigationContext.QueryString.ContainsKey("image"))
            {
                image.Source = new BitmapImage(new Uri(NavigationContext.QueryString["image"]));
            }
        }

>>After

        protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e)
        {
            if (NavigationContext.QueryString.ContainsKey("image"))
            {
                image.Source = new BitmapImage(new Uri(NavigationContext.QueryString["image"]));
                PageTitle.Text = NavigationContext.QueryString["title"];
            }
        }

titleキーのQueryStringをPageTitle.Textに投げてるだけです。

簡単ですねっ!