読者です 読者をやめる 読者になる 読者になる

Kindle Paperwhite買いました

Kindle Paperwhite買いました。

今回は箱が閉まります。

f:id:Shinji_Japan:20160515181716j:plain

 

 個人的にKindle端末は

  • KindleのPC用アプリが16:9端末しか考慮してないクソ仕様なので極力他のストアで買うようにしている
  • 通勤で片道5分しか電車に乗らないので外で本を読む機会が少ない

という訳で専用端末買うほどの需要は無かったんですが、プライム会員向けに5/22まで7,300円OFFキャンペーンやってたので「使わなかったら親にあげよう」ぐらいな気持ちで買ってみました。

 

で、ちょっと使ってみた感想ですが

長所

  • 目に優しい
    電子ペーパー&フロントライトなので目に優しいです。
    まだ目が疲れるほど使ってないのであまり実感無いですが。
    300ppiなのでマンガなんかの小さな字も問題なく読めます。
  • バッテリーの持ちが良い
    Wi-Fiモデルだと数週間充電無しでもOKらしいです。
    まだ買ったばかりなのでわかりませんが。
  • 辞書を簡単に引ける
    英語とか読むなら便利ですね。英ペな自分には不要ですが。
  • 小さい、軽い
  • 箱がちゃんと閉まるf:id:Shinji_Japan:20160515235722j:plain

欠点

  • ページ送りでちょっと待たされる
    「ちょっと3ページ前まで戻りたい」とかだと気になりますが通常は許容範囲だと思います。
    あまり使いやすくないですがシークバー的なのもあります。
  • 持ちにくい
    重心が手からはみ出るのと滑りやすいのでちょっと持ちにくいです。
    カバーを買えば解消する?
    カバー無しでバッグに入れるのも画面に傷つかないか心配だしカバーは買いましょう。自分はまだ買ってません。
  • 1ページずつしか表示できない
    マンガなんかだと見開きがあったりするので時々残念な気持ちになります。
    設定->横画面モード、でできました

といったところです。

 

冒頭で挙げた通りそもそも自分には必要ない端末ですが
買ってみた感想としては「定価で買うほどじゃないけど7300円引きならまあいいかな」ぐらいな感じです。
外で使わなくてもリビングやベッドに寝転がって使えますしね。

 

※キャンペーンがプライム会員限定である旨追記しました

NuAns NEO購入レポート

NuAns NEOを購入しましたのでレポートしたいと思います。

色はこんな感じ

f:id:Shinji_Japan:20160211101857j:plain

かっこいいですね。

心が汚れている人たちから「抹茶クリーム」とか言われましたが気にしません。

 

せっかくのかっこいいケースが傷つかないよう外カバーも購入しました。

f:id:Shinji_Japan:20160211111008j:plain

 

さっそく装着してみます。

装着後-横から

f:id:Shinji_Japan:20160211110329j:plain

ちょっと厚みが増した感じがしますが許容範囲です。

 

装着後-上から

f:id:Shinji_Japan:20160211110743j:plain

微妙な隙間が気になりますがこれ以上は本体カバーを外さないとサイズ的に無理なようです。これぐらいなら許容範囲ですね。

 

さて、開封の儀を終えたのでマニュアル等を箱にしまおうと思ったのですがここでトラブルが。

箱を閉めようとしても

f:id:Shinji_Japan:20160211103045j:plain


途中で何かにぶつかってここまでしか閉まりません。
「力づくで閉めましょう」とのアドバイスをいただき力づくで閉めてみた結果

f:id:Shinji_Japan:20160211103125j:plain

反対側が空きました。


「NuAnsNEO 箱 閉まらない」等で検索したりしながら2時間ほど試行錯誤したのですが

f:id:Shinji_Japan:20160211104736j:plain


気づいたら中身がボコボコになってました。とてもつらい

 

 

 

 

SurfaceBook購入レポート

SurfaceBookを買ったので今まで使っていたSurfacePro3を売ることにしました。

箱にしまおうと思ったのですがここでトラブルが。

箱を閉めようとしても

f:id:Shinji_Japan:20160205002535j:plain

 

f:id:Shinji_Japan:20160205002415j:plain

途中で何かにぶつかってここまでしか閉まりません。

箱の中をのぞいてみても特に引っかかるようなものはありません。

 「SurfacePro3 箱 閉まらない」等で検索したりしながら2時間ほど試行錯誤したのですが

 

 

 

 

 

 

f:id:Shinji_Japan:20160205005905j:plain

内箱の方が長かったみたいです。気を付けてくださいね。

 

 

MADOSMAでおすすめの鳥よけアプリ

ついにMADOSMAが発売されましたね。

みなさんもちろん購入済みだと思います。私は買ってません。

で、せっかくMADOSMAを買ったのに農作物を鳥に荒らされて困っていませんか?

 

そんなみなさんにおすすめのアプリのご紹介です。

これは端末にCDの画像を表示し畑に吊るすことで鳥を怖がらせて、農作物を鳥の被害から守ろうというアプリです。

 

無料のお試し版ではCDの画像しか表示できませんが、お金を払って有料版にアップグレードすることで目玉の画像を表示することもできるようになります。

 

これで安心ですね。

 

ストアアプリでTextBoxのAcceptReturnをTrueに設定するとEnterキーを押してもKeyDownイベントが発生しない対策

WindowsPhoneの国内発売まで毎日ブログ更新の1日目として、めとべや東京#7で話した内容その2について書きます。

 

ストアアプリでTextBoxのAcceptReturnをTrueに設定するとEnterキーを押してもKeyDownイベントが発生しなくなります。

ただTextBoxで改行したい、EnterキーのKeyDownイベントも取りたいというケースはあると思うのでその対策を。

 

まずTextBoxを配置します

<Page
    x:Class="App26.MainPage"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:local="using:App26"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    mc:Ignorable="d">

    <Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
        <TextBox x:Name="textBox" AcceptsReturn="True"/>
    </Grid>
</Page>

 

で、AddHandlerでKeyDownイベントをくっつけます。

この際3つ目の引数であるHandledEventsTooにTrueを渡してあげます。

        public MainPage()
        {
            this.InitializeComponent();
            this.textBox.AddHandler(TextBox.KeyDownEvent, new KeyEventHandler(textBox_KeyDown), true);
        }

        void textBox_KeyDown(object sender, KeyRoutedEventArgs e)
        {
            new Windows.UI.Popups.MessageDialog("Hello,world!").ShowAsync();
        }

 

以上です。簡単ですね

めとべや東京 #7で登壇してきましたその1 ストアアプリでListViewに左右のスワイプ処理を追加する

ストアアプリ

めとべや東京 #7で登壇してきました。

 

AeroPrismの機能の一部を実際にライブコーディングで実装してみようといった内容でしたが、

発表後に「ライブコーディングの内容全部覚えてられない」等の声をいただきましたのでじわじわとブログにまとめていきたいと思います。

 

ストアアプリのTwitterクライアントAeroPrismではツイートを右にスワイプするとリプライ、左にスワイプすると会話のスレッド表示ができます。

f:id:Shinji_Japan:20150120015114p:plain

f:id:Shinji_Japan:20150120015123p:plain

この機能を実装してみましょう。

 

まずはXAML

1.ListViewItemの中にControl(ここではBorder)を配置

2.配置したControlにManipulationDeltaイベントを追加

3.ManipulationModeにはカンマ区切りでTranslateXとSystemを指定

<Page
    x:Class="App25.MainPage"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:local="using:App25"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    mc:Ignorable="d">

    <Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
        <Grid.RowDefinitions>
            <RowDefinition Height="100"/>
            <RowDefinition/>
        </Grid.RowDefinitions>
        <TextBlock x:Name="textBlock" FontSize="50" Margin="0,30,0,0"/>
        <ListView x:Name="listView" Grid.Row="1">
            <ListView.ItemTemplate>
                <DataTemplate>
                    <Border
                        ManipulationDelta="Border_ManipulationDelta"
                        ManipulationMode="TranslateX,System"
                        Width="300" Height="100" Background="Pink"/>
                </DataTemplate>
            </ListView.ItemTemplate>
        </ListView>
    </Grid>
</Page>

 

つぎにコードの方ですが

    public sealed partial class MainPage : Page
    {
        public MainPage()
        {
            this.InitializeComponent();
            this.listView.ItemsSource = Enumerable.Range(0, 100);
        }

        private void Border_ManipulationDelta(object sender, ManipulationDeltaRoutedEventArgs e)
        {
            if(e.Delta.Translation.X > 10)
            {
                this.textBlock.Text = "Right";//右スワイプ時の処理
            }
            else if(e.Delta.Translation.X < -10)
            {
                this.textBlock.Text = "Left";//左スワイプ時の処理
            }
        }
    }

 

こんな感じ。

ManipulationDeltaRoutedEventArgsのDelta.Translationでスワイプの移動量が取れます。

X方向の移動量が10より大きければ右スワイプ、-10より小さければ左スワイプと判断してそれぞれ処理を追加します。

 

以上で左右のスワイプ処理が追加できます。

 

追記:

Border_ManipulationDeltaの引数senderにはスワイプしたBorderが渡ってきます。

ItemのViewModelは(sender as Border).DataContextで取得可能です。

また、このままだと指でスワイプした場合もマウスでドラッグした場合も処理が行われるので必要であればe.PointerDeviceTypeで判断してください。

 

メモ:ストアアプリデバッグ実行時に「エラー DEP0100」「エラー 80004005」で失敗する場合の対処

f:id:Shinji_Japan:20150125122539p:plain

ストアアプリデバッグ実行時に上記エラーが出た場合、

プロジェクト>ストア>開発者ライセンスの取得、で解決しました

f:id:Shinji_Japan:20150125122741p:plain