私はActionBarSherlockを使用しており、フルスクリーン画像のActionBarを非表示/表示しようとしています。
getSupportActionBar.hide();
と
getSupportActionBar.show();
しかし、それは本当にびくびくして厄介です。スムーズにする方法や、平行移動/不透明度のアニメーションを適用する方法はありますか?
ABSソースをさらに詳しく調べて、その動作を観察すると、少なくとも最小限のアニメーションが定義されているようです。標準のActionBarについても同じことは言えません。
完全を期すために、ImageView.clickから呼び出す関連コードを次に示します。
if( shouldRender )
{
. . .
getSupportActionBar().hide();
getWindow().addFlags( WindowManager.LayoutParams.FLAG_FULLSCREEN );
}
else
{
. . .
getSupportActionBar().show();
getWindow().clearFlags( WindowManager.LayoutParams.FLAG_FULLSCREEN );
}
フラグの設定/クリアもジャンプを引き起こすことは注目に値しますが、それほど目立たないので、もしあったとしても、後でそれに取り組むつもりでした。
編集: これは(ABSの作成者による)ネイティブのActionBarでは不可能であると述べているようです。彼のアニメーションを定義する2つのXMLファイルを編集するだけでよいと思いますが、それではプラットフォームに完全に浸透することはできません。