2016-09-27 9 views
0

私は、関連する操作のためにシングルラインメッセージとしてSnackBarを使用しています。方法isGPSEnabledSnackBarは、下部バーから一定のスペースを許します。

Snackbar snackBar; 
public void showSnackBar(View view){ 
    snackBar = Snackbar.make(view, "Searching for GPS", Snackbar.LENGTH_INDEFINITE); 
    snackBar.show(); 
} 

this

はなぜSnackBar下のバーからいくつかのスペースを許可し、私はこの方法showSnackBar

if(Helper.isGPSEnabled(this)){ 
      showSnackBar(findViewById(android.R.id.content)); 
} 

使用しかし、私はこれを得ましたか。

編集

レイアウトファイル:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/content" 
    android:orientation="vertical" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:background="@android:drawable/edit_text" 
    android:divider="@android:drawable/divider_horizontal_textfield" 
    android:addStatesFromChildren="true"> 

<LinearLayout android:id="@+id/container" 
    android:orientation="vertical" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:paddingEnd="0dip" 
/> 

<AutoCompleteTextView android:id="@+id/edit" 
    android:completionThreshold="1" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:singleLine="true" 
    android:layout_gravity="center_vertical" 
/> 
</LinearLayout> 

答えて

0

があなたのレイアウトファイルでandroid.R.id.contentビューを確認してください。 FrameLayoutの場合、このビューの下部にSnackBarが表示されます。パディングを追加した場合は削除してください。

レイアウトコードを共有すると、より良いお手伝いをすることができます。

+0

は、私の編集を参照してください、私はレイアウトファイルを添付してください。 –

+0

あなたのコードアプリケーションごとにクラッシュする必要があります。なぜなら 'android.R.id.content'は' android:id = "@ + id/content"とは違うからです。 'findViewById(R.id.content)'または 'android:id =" @ android:id/content "' – Sravan

+0

を変更してみてください。 'showSnackBar'メソッドを' isGPSEnabled'メソッドでどのように呼び出す必要がありますか? –

0

変更 'コンテンツ' リニアlayout_heightは= "match_parent"

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/content" 
    android:orientation="vertical" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:background="@android:drawable/edit_text" 
    android:divider="@android:drawable/divider_horizontal_textfield" 
    android:addStatesFromChildren="true"> 

答えを追加します。これを試して。 XMLリニアIDの変更

android:id="@+id/content" to android:id="@+id/parentLinear" 

とコードで

LinearLayout linear = (LinearLayout)findViewById(R.id.parentLinear); 
Snackbar.make(linear, "Searching for GPS", Snackbar.LENGTH_INDEFINITE).show(); 
+0

この変更は同じ結果を再度示します。 –

+0

質問を追加してください。 – Andromer

関連する問題