You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Swift集成MDCCard遇报错:找不到MaterialComponents.MaterialCards模块

Fixing "No such module 'MaterialComponents.MaterialCards'" & CocoaPods Compatibility Issues

I’ve run into these exact issues before when working with Material Components Cards in Swift—let’s break down how to fix them step by step:

1. Update CocoaPods to Resolve Spec Issues

Old versions of CocoaPods often can’t properly parse newer Material Components sub-specs. Start by getting the latest version installed:

# Update the CocoaPods gem itself
gem install cocoapods
# Refresh your local repository of pod specifications
pod repo update

2. Fix Your Podfile for Compatibility

The "CocoaPods could not find compatible versions" error usually stems from either a mismatched minimum iOS version or an outdated pod reference. Here’s a reliable Podfile setup:

# Material Components requires iOS 11.0 or later—adjust if your project supports this
platform :ios, '11.0'
use_frameworks!

target 'YourProjectName' do
  # Explicitly include the Cards sub-component
  pod 'MaterialComponents/Cards'
  
  # If you still hit version conflicts, lock to a stable release (example version)
  # pod 'MaterialComponents/Cards', '~> 120.0'
end

Replace YourProjectName with your actual Xcode target name. If you need to pick a specific version, stick to a stable release range like ~> X.X to avoid unexpected breaking changes.

3. Clean Up Cached Pod Data

Cached Pod files often cause weird resolution glitches. Run these commands to start fresh:

# Remove existing Pod integration from your project
pod deintegrate
# Delete the lock file to reset version resolutions
rm Podfile.lock
# Reinstall all Pods
pod install

4. Open the Correct Project File

This is a common rookie mistake: after running pod install, you must open your project using the .xcworkspace file (not the .xcodeproj file). The workspace includes both your project and the Pods dependencies, so Xcode can locate the MaterialComponents modules properly.

5. Confirm Your Import Statement

Once everything is set up, the import should work as expected:

import MaterialComponents.MaterialCards

Alternatively, you can import the entire MaterialComponents library and use MDCCard directly:

import MaterialComponents
// Initialize your card like this:
let card = MDCCard(frame: CGRect(x: 0, y: 0, width: 300, height: 200))

If you’re still seeing errors, double-check that your Xcode project’s build settings don’t have custom module paths that might be overriding Pods’ module locations.

内容的提问来源于stack exchange,提问作者user3911483

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 06:47:44