問題タブ [android-gridview]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
.net - .NET Web サービスからの DataSet を Android GridView にバインドする方法は?
データセットを返す .net Web サービスを呼び出しているので、サービスからデータセットを読み取って android GridView にバインドするにはどうすればよいですか?
次のような Web サービスの応答を取得しています。
ここの「obj」では、.NET Web サービスから DataSet を取得しています。データセットを Android GridView に読み込む方法を教えてください。
ありがとう、ナグ。
android - ArrayList オブジェクトを Android GridView にバインドする方法は?
次のような配列リスト オブジェクトのコレクションがあります。
persons
では、このオブジェクトのリストを Androidにバインドするにはどうすればよいgridview
ですか?
android - GridView の項目をクリックすると画像が変わる
私は9つのアイテムを持つGridViewを持っています。私がやろうとしているのは、アイテムをクリックするとアイコンが変わることです。私がやっている方法は戻ってきます
私はクラスをしなければなりません:
MainLayout.java
ImageAdapter.java
ここに私の2つのxmlファイルがあります:
menugrid.xml
mainlayout.xml
私のコードで何が間違っているのか誰か教えてもらえますか? または、アイテムを押したときにアイテムの画像を変更する方法は? onTouchListener はイベントがあるためevent.getAction() == MotionEvent.ACTION_DOWN
、画像を表示するときevent.getAction() == MotionEvent.ACTION_UP
と元のアイコンを表示するときに効率的だと思います。
前もって感謝します。
android - ヘルプ!Android用のカレンダーアプリを作成するにはどうすればよいですか?
GridView
カレンダーアプリケーションを管理するためのを作成しました。アイデアは、ユーザーが特定の日にテキストと画像を追加し、グリッドでイベントを表示できるようになるということです。
の代わりに使用できるカレンダーライブラリまたは組み込みクラスはありますか、またはこの(または同様の)目的のために特別にGridView
使用した経験のある人はいますか?GridView
コードでの回答をいただければ幸いです。
android - OnItemClickListener 構文 - 何が起こっているのか、なぜそれが機能するのか説明してください。
私はグリッドビューを実装し、それがどのように機能するかを理解するために、例から一緒にハッキングしてきました。私はアダプターを作成し、リスナーを実装するようになったとき、それがこのように達成されることを発見しました。
これがリストビューと異なるのはなぜですか? また、変数宣言の後に中括弧でメソッドが実装されているのはなぜですか?
どうもありがとう、
M
android - setShadowLayer は GridView の描画時間を遅くしますか?
現在、ImageViews を含む GridView を使用しており、画像の背後に影を付けたいと考えています。グリッドには、いつでも 15 枚の画像が表示される可能性があります。画面を 50 fps でレンダリングして滑らかに表示するという仮定の下で作業すると、計算によると、各 ImageView の合計描画時間が約 1.3 ミリ秒を超えないようにする必要があります。
Romain Guy が彼の Shelves アプリでどのように影を作っているかを見てみました: http://code.google.com/p/shelves/source/browse/trunk/Shelves/src/org/curiouscreature/android/shelves/util/ ImageUtilities.java
これは理にかなっているように思えたので、次のクラスを作成しました。
(明らかに、これは影のある黒い長方形を与えるだけですが、パフォーマンスに関する最初の推測を得るには十分でした。)
グリッドのスクロールがかなり不安定だったので、Hierarchy Viewer で得られた描画時間を確認しました: ImageView あたり ~3.5ms です。これは、せいぜい約19fpsになります。
ただし、setShadowLayer() ステートメントを削除すると、Hierarchy Viewer は ImageView あたり約 0.2 ミリ秒の描画時間を示します。
drawRect() のことをすべて忘れて、代わりに onDraw() で setBackgroundResource(R.drawable.my_nine_patch) を呼び出してシャドウ エッジを持つ 9 パッチを作成すると、ImageView あたり約 1.5 ミリ秒の描画時間が表示されます。
shadowLayer で Paint を使用する際の既知のパフォーマンスの問題はありますか? 上記のコードで何かばかげたことをしていますか?
android - AndroidでクリックしたGridViewアイテムに背景描画可能を設定するにはどうすればよいですか?
たくさんGridView
のアイコンがあり、そのうちの1つを選択する必要があります。そして、選択するということは、次のことを意味します。
- データベースに保存するためにドローアブルIDが必要です(後でアクセスできるように)
- どのアイコンが現在選択されているかをユーザーに知らせるために、グリッド上にある種の視覚的な手がかりを描く必要があります
私はこれを見つけました:http:
//groups.google.com/group/android-developers/browse_thread/thread/f08a58167dbaa8c8
ですから、私setSelection
は絵の外にあると思います、そして私はそれを使ってアイコン自体を選択したり、視覚的な手がかりを描いたりすることはできません。のグリッドアイテムの位置を知っているので、onItemClickListener
それをプライベートクラス変数として保存できます。私の最大の問題は、その視覚的な手がかりを描くことです。
どうすればそれを達成できますか?クリックしたアイテムに視覚的なキューを描画し、ユーザーが別のアイテムをクリックした場合に、その視覚的なキューを「描画解除」して新しいアイテムに再描画するにはどうすればよいですか?
android - GridView行が重なっています:行の高さを最も高いアイテムに合わせる方法は?
この前の人のように、GridView アイテム間に不要な重複があります。
一番右の列を除くすべての列のテキストに注目してください。
前の質問と私が違うところは、一定の行の高さを望んでいないということです。画面スペースを効率的に使用するために、各行の最も高いコンテンツに対応するように行の高さを変更したいと考えています。
GridViewのソース(信頼できるコピーではありませんが、kernel.org はまだダウンしています) を見ると、fillDown() と makeRow() で、最後に表示されたビューが「参照ビュー」であることがわかります。行の高さは次の場所から設定されます。最も高いものからではなく、そのビューの高さ。これは、右端の列が問題ない理由を説明しています。残念ながら、継承によってこれを修正するには、GridView が適切に設定されていません。関連するすべてのフィールドとメソッドは非公開です。
では、「クローンして所有する」という使い古された肥大化した道をたどる前に、ここで見逃しているトリックはありますか? TableLayout を使用することもできますが、それにはnumColumns="auto_fit"
自分で実装する必要があり (たとえば、電話画面に長い列が 1 つだけ必要なため)、それは AdapterView にもなりません。
編集:実際、クローンと所有はここでは実用的ではありません。GridView は、その親クラスと兄弟クラスのアクセスできない部分に依存しているため、少なくとも 6000 行のコード (AbsListView、AdapterView など) をインポートすることになります。
android - 固定された列と固定されたヘッダーを持つテーブル/グリッドの作成
私は小さなAndroidアプリに取り組んでいます。この Android アプリに必要なものの一部は、水平方向と垂直方向の両方にスクロール可能なグリッドを用意することです。ただし、一番左の列は固定する必要があります (常に画面に表示され、水平スクロールの一部ではありません)。同様に、上部のヘッダー行を固定する必要があります (垂直スクロールの一部ではありません)。
上記があまり意味をなさない場合、この図はこれを明確に説明することを願っています:
キー:
- 白: まったくスクロールしない
- 青: 縦にスクロール
- 赤: 横スクロール
- 紫: 縦横両方にスクロール
これらの次元の 1 つを実行するのは簡単で、私はそうしました。ただし、これらのディメンションの両方を機能させるのに問題があります。(つまり、下の部分をすべて青にすることも、右の部分をすべて赤にすることもできますが、上記のようにはできません) 私が持っているコードは以下のとおりで、基本的には次のようになります。
結果_グリッド.xml:
Java コード:
これは次のようになります。
少し横スクロールするとこんな感じ
垂直にスクロールすると、このように表示されます。ヘッダーが失われることに注意してください。これは問題です!
最後に 2 つの注意事項があります。
まず、これがどこかに既に存在しないとは信じられません。(私は Android を所有していないので、これを実行できるアプリを探すことができませんでした)。ただし、StackOverflow内とインターネット全体で少なくとも2日間検索して、やりたいことを提供してくれるGridViewまたはTableLayoutのソリューションを探しましたが、まだ解決策を見つけていません。それを見逃してしまったことは恥ずかしいことですが、誰かがこれを行う方法を説明しているリソースを知っていれば、私は感謝します!
次に、2 つの LinearLayouts を追加して、これに対する解決策を「強制」しようとしました。作成します。このコードを投稿することはできますが、これはすでにかなり長いので、私の言いたいことが明らかであることを願っています。これは部分的には機能しましたが、ここでの問題は、ヘッダーとコンテンツの列が一列に並んでいないことです。TableRows 内の TextViews で getWidth() と setMinimumWidth() を使用したかったのですが、ここで説明したように、onCreate 中はこのデータにアクセスできませんでした (onPostCreate 内でもアクセスできませんでした)。これを機能させる方法を見つけることができませんでした。この領域での解決策も素晴らしいでしょう!
最後までここまでたどり着いたのなら、あなたに敬意を表します!