-1

私はどちらFirebaseArduino....についてはわかりませんが、David Eastのビデオを参照して、このコードを書きました。だから私はエラーが発生しています、それを解決するのを手伝ってください。

エラーは次のとおりです。

エラー:(66, 52) エラー: FirebaseListAdapter() に適したコンストラクターが見つかりません コンストラクター FirebaseListAdapter.FirebaseListAdapter(Activity,Class,int,Firebase) は適用できません (実際の引数リストと仮引数リストの長さは異なります) コンストラクター FirebaseListAdapter.FirebaseListAdapter(Activity, Class,int,Query) は適用できません (実引数リストと仮引数リストの長さは異なります)

これは MainActivity.java のコードです。

package com.example.devashish.sprout;

import android.os.Bundle;
import android.support.design.widget.FloatingActionButton;
import android.support.design.widget.Snackbar;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
import android.util.Log;
import android.view.View;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.ListView;
import android.widget.TextView;

import com.firebase.client.ChildEventListener;
import com.firebase.client.DataSnapshot;
import com.firebase.client.Firebase;
import com.firebase.client.FirebaseError;
import com.firebase.client.ValueEventListener;
import com.firebase.ui.FirebaseListAdapter;

import java.util.ArrayList;
import java.util.Map;
import java.util.Objects;

public class MainActivity extends AppCompatActivity {

Firebase mRootRef;
ArrayList<String> mMessages= new ArrayList<>();

TextView mTextView;
ListView mListView;



@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
    setSupportActionBar(toolbar);

    FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab);
    fab.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG)
                    .setAction("Action", null).show();
        }
    });
}

@Override
protected void onStart(){
    super.onStart();



    mTextView=(TextView)findViewById(R.id.textViewCondition);
    mListView=(ListView)findViewById(R.id.listView);

    mRootRef = new Firebase("https://pleaserun.firebaseio.com");
    Firebase messagesRef=mRootRef.child("condition");
    final FirebaseListAdapter<String> adapter= new FirebaseListAdapter<String>() {
        @Override
        protected void populateView(View view, String s, int i) {
            TextView textView=(TextView)view.findViewById(android.R.id.text1);
            textView.setText(s);
            mListView.setAdapter(adapter);
        }
    };



}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.menu_main, menu);
    return true;
}

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    // Handle action bar item clicks here. The action bar will
    // automatically handle clicks on the Home/Up button, so long
    // as you specify a parent activity in AndroidManifest.xml.
    int id = item.getItemId();

    //noinspection SimplifiableIfStatement
    if (id == R.id.action_settings) {
        return true;
    }

    return super.onOptionsItemSelected(item);
}
}

あなたが言及した行を次のように変更しました: final FirebaseListAdapter adapter = new FirebaseListAdapter(this,String.class,android.R.layout.simple_list_item_‌ 1,messagesRef)

現在、エラーが発生しています: エラー:(71, 38) エラー: 変数アダプターが初期化されていない可能性があります

4

2 に答える 2

0

に必要なコンストラクター引数がありませんFirebaseListAdapter。おそらくあなたの場合は次のようなものです:

final FirebaseListAdapter<String> adapter= new FirebaseListAdapter<String>(
  this,         /* the activity */
  String.class, /* the data type that you're reading from Firebase */
  android.R.layout.two_line_list_item, /* the layout for each item */
  messagesRef   /* the Query/Firebase location to read the data from */
) {
  ...

これはすべて、FirebaseUI リポジトリ、関連するFirebaseUI コードラボ、または Android Studio からのエラー メッセージで適切に文書化されていることに注意してください。

于 2016-03-26T23:07:53.867 に答える
0

問題はfirebaseuiの依存関係にあります。これを使用してください

compile 'com.firebaseui:firebase-ui:0.3.1'

私は同じ問題を抱えていましたが、変更するとエラーはなくなりました。現在の firebaselistadapter コードを削除して、もう一度書き直してください。幸運を

于 2016-05-30T13:50:17.487 に答える