2016-04-13 27 views
5

Tôi gặp phải lỗi không phải là lớp cụ thể khi tôi thêm Hoạt động vào AndroidManifest. Xin hãy giúp tôi tìm ra vấn đề bằng cách loại bỏ lớp trừu tượng cho hoạt động nhưng nó không giải quyết được.Không phải là lớp bê tông AndroidManifest

public abstract class MapsActivity extends FragmentActivity implements OnMapReadyCallback { 
    private GoogleMap mMap; 

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

    @Override 
    protected void onResume() { 
     super.onResume(); 
     setUpMap(); 
    } 

    @Override 
    public void onMapReady(GoogleMap map) { 
     if (mMap != null) { 
      return; 
     } 
     mMap = map; 
     startDemo(); 
    } 

    private void setUpMap() { 
     ((SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map)).getMapAsync(this); 
    } 

    /** 
    * Run the demo-specific code. 
    */ 
    protected abstract void startDemo(); 

    protected GoogleMap getMap() { 
     return mMap; 
    } 

} 
+0

mà lỗi vui lòng cung cấp stacktrace .. . – Opiatefuchs

Trả lời

6

Bạn không cần phải tuyên bố abstract lớp siêu trong biểu hiện của bạn

Trong manifest của bạn, bạn chỉ cần bao gồm các lớp học Hoạt động mà bạn sẽ phải nhanh chóng ví dụ với Intent.

Nếu lớp trừu tượng của bạn chỉ tồn tại để phân lớp các Hoạt động khác (các lớp con) thì bạn cần phải thêm các Hoạt động đó vào Tệp kê khai.

Nếu lớp học của bạn không có lớp con sau đó loại bỏ abstract từ khai lớp học của bạn:

public class MapsActivity extends FragmentActivity implements OnMapReadyCallback { 

Và loại bỏ cũng phương pháp trừu tượng của bạn:

protected abstract void startDemo(); 
Các vấn đề liên quan