2016-10-25 1 views
0

私はAndroidが比較的新しいです。私はturbolinksを使用して構築されたRailsサイト用のWebラッパーを実装しようとしています。私はgithubのturbolinks-android repoのreadmeに従っていますが、この行で問題が発生しました Androidがマニフェストのturbolinks_view要素を見つけることができないようです。私は以下のすべてのコードを投稿します。どんな助けでも大歓迎です。 :)AndroidでTurbolinksViewが見つかりません

MainActivity.java

import android.support.v7.app.AppCompatActivity; 
 
import android.os.Bundle; 
 

 
import com.basecamp.turbolinks.TurbolinksSession; 
 
import com.basecamp.turbolinks.TurbolinksView; 
 

 

 
public class MainActivity extends AppCompatActivity { 
 

 
    @Override 
 
    protected void onCreate(Bundle savedInstanceState) { 
 
     super.onCreate(savedInstanceState); 
 
     setContentView(R.layout.activity_main); 
 

 

 
     turbolinksView = (TurbolinksView) findViewById(R.id.turbolinks_view); 
 

 
     TurbolinksSession.getDefault(this) 
 
       .activity(this) 
 
       .adapter(this) 
 
       .view(turbolinksView) 
 
       .visit("https://basecamp.com"); 
 
    } 
 
}

activity_main.xml

<?xml version="1.0" encoding="utf-8"?> 
 

 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
 
xmlns:tools="http://schemas.android.com/tools" 
 
android:layout_width="match_parent" 
 
android:layout_height="match_parent" 
 
android:orientation="vertical"> 
 

 
<com.basecamp.turbolinks.TurbolinksView 
 
    android:id="@+id/turbolinks_view" 
 
    android:layout_width="match_parent" 
 
    android:layout_height="match_parent"/> 
 

 
</LinearLayout>

Androidのマニフェスト

<?xml version="1.0" encoding="utf-8"?> 
 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
 
    package="com.example.turbolinkswrapper"> 
 
    <uses-permission android:name="android.permission.INTERNET" /> 
 

 
    <application 
 
     android:allowBackup="true" 
 
     android:icon="@mipmap/ic_launcher" 
 
     android:label="@string/app_name" 
 
     android:supportsRtl="true" 
 
     android:theme="@style/AppTheme"> 
 
     <activity android:name=".MainActivity"> 
 
      <intent-filter> 
 
       <action android:name="android.intent.action.MAIN" /> 
 

 
       <category android:name="android.intent.category.LAUNCHER" /> 
 
      </intent-filter> 
 
     </activity> 
 
    </application> 
 

 
</manifest>

build.gradle

apply plugin: 'com.android.application' 
 

 
android { 
 
    compileSdkVersion 25 
 
    buildToolsVersion "25.0.0" 
 
    defaultConfig { 
 
     applicationId "com.example.turbolinkswrapper" 
 
     minSdkVersion 25 
 
     targetSdkVersion 25 
 
     versionCode 1 
 
     versionName "1.0" 
 
     testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" 
 
    } 
 
    buildTypes { 
 
     release { 
 
      minifyEnabled false 
 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
 
     } 
 
    } 
 
    productFlavors { 
 
    } 
 
} 
 

 
dependencies { 
 
    compile fileTree(include: ['*.jar'], dir: 'libs') 
 
    compile 'com.basecamp:turbolinks:1.0.4' 
 
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', { 
 
     exclude group: 'com.android.support', module: 'support-annotations' 
 
    }) 
 
    compile 'com.android.support:appcompat-v7:25.0.0' 
 
    testCompile 'junit:junit:4.12' 
 
}

Error:(20, 9) error: cannot find symbol variable turbolinksView

+0

にあなたのよりよい制御を与えるのだろうか? –

+0

@JuanFelippoはAndroidManifestとbuild.gradleで質問を更新しました。 – JonSayer

答えて

1

あなたはちょうどあなたがそれを使用する前にturbolinksViewを宣言する必要があります。

TurbolinksView turbolinksView = (TurbolinksView) findViewById(R.id.turbolinks_view); 

以下にご

turbolinksView = (TurbolinksView) findViewById(R.id.turbolinks_view); 

を変更

はあなたのAndroidManifestを提供し、build.gradleことができ、全体MainActivity

public class MainActivity extends AppCompatActivity { 

    private TurbolinksView turbolinksView; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 


     turbolinksView = (TurbolinksView) findViewById(R.id.turbolinks_view); 

     TurbolinksSession.getDefault(this) 
       .activity(this) 
       .adapter(this) 
       .view(turbolinksView) 
       .visit("https://basecamp.com"); 
    } 
} 
+0

この問題は修正されているようです。ありがとうTrey。 – JonSayer

関連する問題