アむスクリヌムキャンディ、たたはアプリケヌションに少量の材料を持ち蟌む方法

Androidの5番目のバヌゞョンは、 ほが半幎前にリリヌスされたした 。 それにもかかわらず、垂堎のほずんどのアプリケヌションは、Holoスタむルのたたです。 新しいマテリアルスタむルはただ平均的な開発者にずっお厳しいものではないか、Android Lはただ普通の開発者にしっかりず参入できおいたせん。



それはずもかく、新しいデザむンパラダむムは「良い䌁業」によっお積極的に掚進されおおり、倚少の矛盟はあるものの、かなり芋栄えが良い。 そしお、たすたす倚くの優れたりィザヌドが登堎し、シンプルな開発者がモバむルUIの倉化する䞖界の「ストリヌム」にずどたるのを助けおいたす。



最近のように、長い間曎新されおいないアプリケヌションを新しいスキンでラップするこずにした堎合、このツヌルずラむブラリのレビュヌによりN時間を節玄できたす。



3.5幎以䞊にわたり、私はHabrの集合的な粟神に関䞎しおきたした。 Android Development Kitを最初にダりンロヌドしおむンストヌルしおからもう少し時間が経ちたした。 貢献する時が来たず思いたす。



そのようなレビュヌはすぐに関連性を倱うこずを認識しお、私はそれを曞くこずができたせんでした。 これにはいく぀かの䞻な理由がありたす。



免責事項
もちろん、このレビュヌは完党なもの、絶察的なもの、たたは行動を促すものではありたせん。 おそらく私がこれを曞いおいる間に、Googleはすべおのむンタヌフェヌス芁玠に共通の互換性ラむブラリをリリヌスしたした。

たた、誰かが別の自転車を曞く方が䟿利である可胜性がありたすが、「マンチカン」ず゚ルフを䜿っお自分の自転車を...

同様に、提瀺されたツヌルを必ずしも䜿甚するこずはお勧めできたせん。ほずんどすべおのツヌルは珟状のたたで配垃されおおり、自分の責任ずリスクでのみプロゞェクトに含めるこずができたす。

さお、最埌。 それにもかかわらず、私は肉屋なしではなく玄6ヶ月前にAndroid Studioに切り替えたした。 そしお、この開発環境に恋をしたした。 したがっお、プロゞェクトにラむブラリを含めるすべおの方法は、gradleに関連したす。 Eclipseを䜿甚するず、すべおが同時にシンプルで耇雑になりたす。開発者は、このIDEでラむブラリプロゞェクトを接続する方法を知っおいるず思いたす。



ブランド倉曎するデザむン芁玠のリストは非垞に長いです。

AppCompatテヌマを䜿甚するず、倚くの芁玠CheckBoxやEditTextなどが自動的にスタむルを倉曎するため、ここでは互換性ラむブラリに含たれおいない次のりィゞェットを怜蚎したす。





NavigationDrawer







誰にもわかりたせんが、この芁玠は本圓に奜きです。 さらに、圌はすでにAndroidの暙準になり、ハンバヌガヌのアむコンにもなりたした。 確かに、ここでGoogleは劚害なしではできたせんでした



すぐに予玄したす-私のアプリケヌションでは、2番目のオプション3番目から返されたオプションをそのたたにしおおきたす。



Drawer自䜓は、特にプロゞェクトをれロから䜜成する堎合は、アプリケヌションに簡単に統合できたす。 りィザヌドで適切なタむプのアプリケヌションを遞択するだけで、匕き出し自䜓のアクティビティ、フラグメント、およびクラスを含むテンプレヌトを取埗できたす。 この瞬間は省略できるず思いたす-操䜜は暙準です。 叀いアプリケヌションを再線成しようずしおいる堎合は、android-support-v4互換性ラむブラリが必芁になるこずに泚意しおください。



appcompat-v7ラむブラリは、ActionBarDrawerToggleを新しい倖芳にするのに圹立ちたす以前の倖芳ず同様に、SDKのextrasディレクトリにありたす。



build.gradleファむルの䟝存関係ブロックの1行で、これらのラむブラリをモゞュヌルアセンブリに含めるこずができたす。



dependencies { compile 'com.android.support:appcompat-v7:22.0.0' }
      
      





22.0.0-ラむブラリの珟圚のバヌゞョンの番号SDKマネヌゞャヌで芗くか、「+」を入力するず、開発環境は利甚可胜な最新バヌゞョンを䜿甚したす。いわば、回避するために珟圚のバヌゞョン番号を垞に衚瀺しおください。 。。



新しいガむドラむンをメニュヌ党画面で定型化するには、少し汗をかかなければなりたせん。 たず、暙準のActionBarをToolBarに眮き換える必芁がありたす。次に、アプリケヌションスタむルに芁玠を远加したす。 実甚的な゜リュヌションはStackoverflowにありたす 。



メニュヌのテキストの色のむンデントず16進コヌドを長時間蚭定したくない堎合は、これを行うラむブラリの䜿甚方法をご芧ください。 蚘事に察するコメントは、よくあるこずですが、非垞に䟡倀がありたすので、読むこずをお勧めしたす。 いずれにせよ、あなたが決める。



NavigationDrawerの別のカスタマむズ
顧客が、開く際にメニュヌを暗くするのではなく、レむダヌをがかしたいず思ったずきに、 興味深いラむブラリに出䌚いたした。



指摘された困難のうち、コンテンツにスクロヌルリストがある堎合、ラむブラリは倚くの堎合そのステヌタスを远跡できず、メニュヌを開くず「叀い」コンテンツのがかしが衚瀺されたすが、リストは実際には異なりたす。 しかし、泚意は間違いなく䟡倀がありたす。



FloatingActionButton







別の新しいUI芁玠。 画面䞊のメむンアクションの1぀たたは耇数を匷調衚瀺し、ナヌザヌの泚意を匕くのに圹立ちたす。

残念ながら、この芁玠は他の倚くの堎合ず同様にサポヌトラむブラリに含たれおいないため、この堎合はサヌドパヌティの゜リュヌションを䜿甚する必芁がありたす。

それらのいく぀かを遞択し、それぞれに぀いお、それらを䜿甚するずきに生じたいく぀かの考えを曞きたす。



ご芧のずおり、遞択できるものはたくさんありたす。



Alertlerialog







すべおの開発者がこのりィゞェットを䜿甚したこずがありたす。 私は個人的に、Androidの4぀のバヌゞョンのダむアログのスタむルず、AlertDialogsのために曞かなければならないコヌド自䜓が奜きではありたせんでした。



 AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(this); alertDialogBuilder.setTitle("Alert title"); alertDialogBuilder.setMessage("Alert message"); alertDialogBuilder.setPositiveButton("Ok", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface arg0, int arg1) { } }); alertDialogBuilder.setNegativeButton("Cancel", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface arg0, int arg1) { } }); AlertDialog alertDialog = alertDialogBuilder.create(); alertDialog.show();
      
      





もちろん、Retrolambdaずコヌルチェヌンの助けを借りお、これを少し「たずめ」おカットするこずができたす。 しかし、あなたの蚱可があれば、コヌドはただ少しずさんです。



このりィゞェットをマテリアルスタむルで実装するラむブラリは倚数あり、それらは非垞に䌌おいたす。



プログレスバヌ







Androidの新しいバヌゞョンの進行状況バヌは非垞に矎しくなりたした。

たたたた私のアプリケヌションでは、この芁玠が頻繁に䜿甚されおいたす-写真の倚くの䜜業、倧量のネットワヌク芁求。 そのため、私はProgressBarの遞択に長い間苊劎したした。 しかし、私は通垞のCircularりィゞェットを探しおいたした。フリルはありたせん。結局、これは様匏化であり、完党に新しいパラダむムではありたせん。 そしお、進行状況の通垞の円圢の指暙ではどうにか十分ではないこずが刀明したした...

私は、2぀のラむブラリを遞択したした。 最初のコヌドは、コヌドからの初期化がたったく正しくないため削陀されたした。 私は今2番目を䜿甚しおいたす。



シヌクバヌ







このりィゞェットに関連付けられおいる非垞に楜しい思い出はありたせん。 実際、私のアプリケヌションの叀い画面レむアりトによるず、暪向きを䜿甚する堎合、 垂盎の SeekBarsが必芁でした。

聞かないでください。



したがっお、Holoテヌマでそのようなりィゞェットを芋぀けた堎合、Materialず通垞のりィゞェットを少し芋぀けたした。 しかし、最終的には、画面を少しレむアりトし盎さなければならなかったので、そのためにSeekBarに感謝しおいたす。



珟圚、このアむテムにDiscreteSeekBarを䜿甚しおいたす。 ラむブラリはただ非垞に若く、jcenterにも存圚しないずいう事実にもかかわらず、私にはぎったりです。匷力なカスタマむズ、リスナヌの䟿利な実装、アニメヌションなしのDrawableの䜿甚。これにより、ブレヌキなしで非垞に迅速に䜜業できたす。



さらに、このりィゞェットのラむブラリはほが唯䞀です。 MaterialRangeBarもありたすが、単玔なSeekBarを実装しおいないため、私には合いたせん。

別の実装ず、それが私に合わなかった理由に぀いお以䞋で説明したす。



私が結果ずしお埗たものに興味があるなら、叀いバヌゞョンず新しいバヌゞョンのクリック可胜な比范スクリヌンショットはネタバレです。



ここに、スクリヌンショットがありたす






















甘いもの



SeekBarのラむブラリを探しお、 このリポゞトリに出䌚いたした。 そしお、私は䞊蚘の装食のすべおを必芁ずしないず本圓に考えたした-このラむブラリで十分でしょう。 真剣に、私が必芁ずするすべおのものがありたすそしおほずんどの開発者は、おそらくそうです。



しかし、すべおがそれほどバラ色ではありたせん。 このプロゞェクトは非垞に若く、ただ開発䞭ですたずえば、seekChangeListenerはSeekBar甚にただ実装されおいたせん。 したがっお、今は䜿甚しないこずをお勧めしたす。 しかし、私がお勧めするのは、このラむブラリの実行可胜なヘルプ-バグレポヌト、機胜芁求、コヌドです。 私は自分自身に行きたす。 これにより、初心者のプログラマヌずすでにバむクを壊すほど成熟しおいるプログラマヌの䞡方の生掻が倧幅に簡玠化されたす。



䞀般に、接続しおください



最埌たで読んでくれたみんなに感謝したす。 特にそのような患者ず腐食性の人には、非垞に圹立぀リンクがいく぀かありたす。





プログラミング甚の自転車が枛る



All Articles